Форум сайта python.su
Приветствую Вас, друзья. Я совсем недавно начал изучать Python, да и в целом программирование. До сего момента к программированию никак не относился. На данный момент мои знания ограничены, и появились вопросы, на которые мне не удается найти ответы в Гугле. Прошу разъяснить.
Визуальное программирование? Есть ли такое на языке Python? Мой товарищ однажды показал мне C++ Builder, где он за пару минут может создать какое-никакое приложение, просто нарисовав пару прямоугольников и задав им соответствующие функции.
Есть ли что-то похожее в Python? На данный момент, я так понимаю, что вся работа производится через tkinter, где мы подробно расписываем каждое “окно” : для чего, каких размеров, его функцию,где будет находится. Так ли это?
Если да, то скажите пожалуйста, перед тем как начать писать те самые “окошки”, вы сперва рисуете как-то на бумаге представление о будущей программе? Имеется ввиду не две-три “кнопки” (их ещё можно удержать в голове), а если их будет 10,15,20? Как вы держите эту информацию по каждой будущей “кнопке”? Записываете ли на бумаге, либо каким-то другим способом?
Если нет, прошу написать, с помощью чего вы создаете полноценную “программу”.
Заранее извиняюсь за вопросы от чайника, надеюсь на адекватный ответ. Спасибо
Офлайн
fer0mЕсли вы хотите изучать программирование - изучайте программирование, а не окошки и кнопочки. Вам надо знать язык программирования, алгоритмы, шаблоны проектирования, понимать разные парадигмы и разбираться в современных технологиях и фреймворках, владеть неким минимумом сопутствующих знаний (базы данных, сетевые протоколы, многопоточность и прочие и тому подобное).
Я совсем недавно начал изучать Python, да и в целом программирование.
fer0mДля вас “полноценная” программа ассоциируется исключительно с окошками?
с помощью чего вы создаете полноценную “программу”
Офлайн
FishHook
Если вы хотите изучать программирование - изучайте программирование, а не окошки и кнопочки. Вам надо знать язык программирования, алгоритмы, шаблоны проектирования, понимать разные парадигмы и разбираться в современных технологиях и фреймворках, владеть неким минимумом сопутствующих знаний (базы данных, сетевые протоколы, многопоточность и прочие и тому подобное).
FishHook
Для вас “полноценная” программа ассоциируется исключительно с окошками?
Офлайн
Отвечу кратко. Хотите делать приложения с кнопочками - используйте библиотеку Tkinter. Например, вот так можно сделать окно с кнопкой:
# -*- coding: utf-8 -*- from Tkinter import * # импортирую библиотеку Tkinter def F(): print("На кнопку нажали") root=Tk() # по традиции главное окно называть надо root b=Button(root) # создаю кнопку b["text"]="Кликни на меня" # устанавливаю текст на кнопке b.bind("<Button-1>",F) # назначаем реакцию на событие <Button-1> (нажатие левой кнопки мыши) функцию F b.pack() # чтобы кнопка отображалась root.mainloop() # чтобы все работало
Отредактировано Volobuev_Ilya (Март 4, 2016 11:25:27)
Офлайн
fer0m, если интересны окошечки и кнопочки, посмотри на Qt и его привязку к питону. У него есть визуальный конструктор.
Офлайн
Volobuev_Ilya
Вообще, Tkinter позволит создавать быстро и просто любые приложения. Поэтому не бойтесь - идите вперед и постигайте горизонты мастерства. Удачи в этом деле!
pasaranax
fer0m, если интересны окошечки и кнопочки, посмотри на Qt и его привязку к питону. У него есть визуальный конструктор.
Офлайн
Можешь использовать PyQt.
Неплохой туториал.
Это в Qt есть демонстрационные программки на C++, а Jan Bodnar перевёл их на питон.
Там можно вручную писать, а можно делать форму (xml-файл) в Qt Designer'е и переводить её с помощью утилиты pyuic4 в код на питоне.
fer0mВообще, для проектирования используется UML. Что и как работает в программе, описывается в виде uml-диаграмм. Есть программы для построения uml-диаграмм.
Как вы держите эту информацию по каждой будущей “кнопке”?
fer0mНа бумаге не записывается. Всё делается так, чтобы хранить в проекте.
Записываете ли на бумаге, либо каким-то другим способом?
fer0mНу, ты же консольные не напишешь. Для этого надо в теории программирования знания иметь. Даже если ты язык выучишь, ты всё равно на нём ничего не напишешь.
Одно дело написать калькулятор/сапер и пр. и использовать в командной строке, а другое - видеть, что то, что ты сделал работает как “полноценная программа”.
1 + 2
1 + 2 + -3
1 - 2 - +3
1 + 2 + + - 3
1 - 2 * +3
3
0
-4
ошибка
-5
Офлайн
> Вообще, Tkinter позволит создавать быстро и просто любые приложения.
Вообще забудь про это УГ.
> Неплохой туториал.
Это плохой туториал. Лучше смотреть примеры которые идут вмести с PySide/PyQt
Офлайн
RodegastЭто код от разработчиков Qt, переведённый на питон. Там даже тетрис напрямую взят.
Это плохой туториал.
RodegastВот эти что ли? Просто мешанина какая-то.
Лучше смотреть примеры которые идут вмести с PySide/PyQt
Отредактировано py.user.next (Март 4, 2016 14:51:02)
Офлайн
> Это код от разработчиков Qt, переведённый на питон. Там даже тетрис напрямую взят.
1) Не на русском языке.
2) Перевели его плохо.
> Вот эти что ли? Просто мешанина какая-то.
Нет. Вот эти: https://github.com/PySide/Examples
Офлайн