Objektowo czy nie ? Oto jest pytanie.
Zbierając wiedze na temat pythona okazało się, że jest on jezykiem objektowym!!!
Porównujac sobie kod napisany zwyczajnie a objektowo to do razu widać różnice
Przykład 1.
Wyświetlenie okna z przyciskiem “Hello World” z pomocą modułu tkinter
import tkinter as tk
top = tk.Tk()
B = tk.Button(top, text=”Hello World!”)
B.pack()
top.mainloop()
Przykład 2.
To samo, tylko, że za “objektów”
(tak mi się przynajmniej wydaje, że ten kod robi to samo :P)
import tkinter as tk
class Application(tk.Frame):
def __init__(self, master=None):
tk.Frame.__init__(self, master)
self.pack()
self.create_widgets()def create_widgets(self):
self.hi_there = tk.Button(self)
self.hi_there[“text”] = “Hello World!”
self.hi_there.pack(side=”top”)root = tk.Tk()
app = Application(master=root)
app.mainloop()
Porownując kod, od razu widać, że ten pisany w oparciu o klasy
jest mniej zrozumiały i bardziej rozwlekły.
Z drugiej strony wszystko dookoła mowi, żeby pisac kod w oparciu o klasy.
No i co tu teraz wybrac ?
Pisać projekt obiektowo czy po ludzku ? 🙂
Tkinter is Python’s de-facto standard GUI (Graphical User Interface) package. It is a thin object-oriented layer on top of Tcl/Tk.
ja nie wiem… 😛