En este artĂculo, le contarĂ© algunos de los marcos más populares que lo ayudarán a desarrollar software para computadoras con Windows / MacOS / Linux. Si eres un programador experimentado, difĂcilmente encontrarás nada nuevo en este artĂculo. Es más para principiantes que buscan una soluciĂłn simple a su problema: escribir rápidamente un buen programa multiplataforma (tanto como sea posible).
¿Qué es el desarrollo multiplataforma?
ÂżQuĂ© es el desarrollo multiplataforma de todos modos? Si necesita que su aplicaciĂłn funcione en varios sistemas operativos a la vez con costos mĂnimos de recursos humanos, lo más probable es que recurra a esto. Desarrolla un programa, escribe un cĂłdigo y se ejecuta en todas las plataformas compatibles. ¡Convenientemente! Pero vale la pena distinguir entre multiplataforma y natividad.
, — . . : , .
? -, ( DotNet , Swift/objective C ), -> .
— , , . , , , . GUI. :
Electron JS
, Electron JS "Hello World". " " . , Electron . Electron JS — JavaScript , Web — HTML & CSS, JS. Electron JS Chromium . Electron'a , — , , . , Chrome, . : Electron'e — Slack, Skype, Discord, VSCode, Atom, Postman, Insomnia .. , « ». ,
Web
( "")
( )
GitHub
( )
NW.JS
Electron, NW.JS Web . NW.JS Intel, . NW.JS Electron, . Electron, NW.JS Chromium . NW.JS Electron, - . .
Web
( "")
( )
GitHub
( )
Qt/QML
Qt — ++ Python ( Ruby, PHP, C# . ). Qt , : 2 Android, Kaspersky Internet Security, Virtual Box, Skype, VLC Media Player, Opera . - KDE Qt. Qt — Qt Creator, Qt Designer . , ( , , ) . Qt , .
( Python C++, ) ->
windows
GTK
GTK Qt X Window Systems. Gnome Foundation GNU. (Gnome, xfce MATE, Cinnamon, AfterStep, Marco ), , : Chromium, FireFox, MonoDevelop, Gimp . GTK C, (C, C++, Python, Java ). Gtk - Glade
( "" Gtk - )
Avalonia
, Microsoft . Avalonia XAML. Avalonia WPF/UWP. C#. XAML Avalonia . , , .
(+ )
, , (, )
WPF ( WPF , , WPF )
( CSS, )
( , , )
( , , )
WxWidgets/WxPython
wxWidgets ( wxWindows) — - , (GUI). , GUI. , HTML, XML , , , , , , , , , . Python -WxPython. : FileZilla, AudaCity, BitTorrent .
Tkinter
Tkinter - - - ( Python), , Python. Tkinter Python, Tk. Tk (graphical user interface – GUI), Tcl (Tkinter ).
( Tk )
GUI Python
En este artĂculo, no hablĂ© de todos los marcos, sino de los más populares, con soporte activo y adecuados para proyectos y tareas completamente diferentes. Te insto a que cuentes en los comentarios tu experiencia con varios frameworks (pero solo con los que están en el artĂculo), Âżcuáles son los pros y los contras que ves en el desarrollo multiplataforma?