Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 25, 2018 13:27:14

Faun_
Зарегистрирован: 2018-09-23
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Асемблерщик, трудности понимания классов в связка с PyQt

Мое детство быо очень давно, учили бейсику(который я уже давно до этого пользовал как любимую игрушку(училка сказала что на уроки можно не ходить, не думаю что я много потерял)).
На ассемблер перешел потому, что он скучный и медленный(это сейчас компы крутые, а те проги бейсика выполняли хуже калькулятора). Уже на IBM-совместимых освоил ассемблер, при том ОЧЕНЬ круто на это дело подсел, всю архитектуру проца изучил, сам сейчас фигею с того, как много в меня влезло.. но разочаровался, проги на фоне того что пишут на Си, ни кто оценить не мог. Писал немножко визуальные красивости, была тогда такая мода(интрошки), но этой развлекухой тоже делиться было нескем(интернет только зарождался, и был очень дорогой). еще драйверочки всякие, это чисто любопытство, было интересно как оно там внутри устроено, полезного ни чего считай ни разу не сделал.. Короче забросил я это дело.. А сколь немножко интересовался электроникой, однажды узнал что есть МК!! . Это было просто откровение, я буквально СРАЗУ начал писать нечто путное!(т.к. внутри оказалось все то-же самое),.. а сколь электронщик я был не далекий, и сколь-нибудь сложное устройство для меня непостижимо, …а МК сводит все к тому, что алгоритмы можно без ограничений по сложности делать, подсел на МК очень круто.. Были попытки освоить высокоуровневку, но и тогда она вызывала похожую растерянность(мозг у меня реально как-то по другому устроен), да и с МК я отрывался по полной, так-что запала особо не было, и дело быстро тухло. Теперь-же компы ВЕЗДЕ!! Если раньше связать МК с ПК было неким изыском, то теперь это переросло в необходимость… да и на МК я кажись уже все сферы применения перебрал(написать нечто новое не получается, т.к. все одно и то-же, в разных комбинациях)… стало по настоящему скучно. Так я и пришел к этой дурацкой идее. Большинство, кому за 40, уже ни о чем кроме дачи, машины, и летней поездке на море и не думают, сидят себе на дивашике у телека, пивко потягивают, а не позорятся на форумах что не знают того, что у всех на слуху(а для свежих мозгов так вабще как два пальца). …Да не, мне еще не 50-60, но это не за горами!.. Тогда что-та новое ТОЧНО не осилю, может это последний шанс не затухнуть над своими имкрухами(сечас даже с ними не цацкаются, купляют ардуины, заливают библиотеки и и я на их фоне лузер).
Ладна, пойду разбираться сам, у вас тут своя тусовка, может когда-то и доганю..

Отредактировано Faun_ (Сен. 25, 2018 14:07:23)

Офлайн

#2 Сен. 25, 2018 13:29:52

Papa_Svin
Зарегистрирован: 2018-09-17
Сообщения: 138
Репутация: +  1  -
Профиль   Отправить e-mail  

Асемблерщик, трудности понимания классов в связка с PyQt

Faun_
Мое детство быо очень давно, учили бейсику
Ну так бы сразу и сказал - учил в школе бейсик и тот не помню, а то ассемблерщик

Офлайн

#3 Сен. 25, 2018 14:15:10

Faun_
Зарегистрирован: 2018-09-23
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Асемблерщик, трудности понимания классов в связка с PyQt

Papa_Svin
Ну так бы сразу и сказал - учил в школе бейсик..
Да не учил я его в школе!. Училка знала меньше меня. Я ее просто попрасил задачку с экзаменов, и она отвяла. А школу я ненавидил, и с ее разрешения был на тех занятиях два раза.(второй, чтоб она мне поставила зачет).
Одна из причин что я Си упустил, это сейчас он великий и могучий, тогда так,.. слухи ходили. двушка(286) у меня появился достаточно поздно, это в конце 90-х, тогда непайми что тварилось. И сразу сел за асемблер, там не все так просто, так-что распаляться на какой-та малоизвестный, и “непонятный” Си, уже не хотелось. Это сейчас я понимаю, что время упустил, не за то взялся.
…хотя про освоены асм. не жалею, это было интересно .. На компе не очень, а с микрухами да!

Отредактировано Faun_ (Сен. 25, 2018 14:28:34)

Офлайн

#4 Сен. 25, 2018 14:32:41

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2742
Репутация: +  183  -
Профиль   Отправить e-mail  

Асемблерщик, трудности понимания классов в связка с PyQt

> так-что распаляться на какой-та малоизвестный, и “непонятный” Си, уже не хотелось

Ну в конце 90-х си был вполне себе популярным языком

Сейчас по python-у полно обучающего видео, посмотри хотя бы пару курсов. Тогда всё проясниться.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#5 Сен. 25, 2018 19:54:18

Faun_
Зарегистрирован: 2018-09-23
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Асемблерщик, трудности понимания классов в связка с PyQt

Rodegast Конечно-же я уроков разных пересмотрел много, даже нашел толковый урок, мужик очень лаконично и структурировано преподносит инфу, но у его нет про работу с библиотеками. Т.е. наследования примитивные классы и полиморфизмы я воспроизвести как-то магу, но когда я хачу библиотеку пользовать, там внутри четрт-ти што!, и меня переклинивает. Самостоятельно не магу, только открыв чей-то урок, и повторить его. Информация, логики которой я не уловил, выветривается за пол часа.
Чтобы раскурить библиотеку(в документации много всего, но взаимодействие внутри всей этой КУЧИ вводят в ступор), в Вики вычитал, что есть “диаграммы классов” где в форме дерева показано, кто чего наследует. Погуглю что-нить такова.
Я Про Си, я начал на его засматриваться, когда народ не 98-ю винду пересаживался. а я как всегда был в хвосте технологий(железо тогда было ДОРОГО(а денег, как и всегда сколько себя помню, мала)), так-что у меня как-то так..
Решил осваивать TkInter, по ему уроки достаточно примитивные, и все ручками.. (просто PyQt везде очень нахваливают(да еще этот ..Designer попутал .) вот и подумалось, может это хорошо!..)

Отредактировано Faun_ (Сен. 25, 2018 19:56:54)

Офлайн

#6 Сен. 25, 2018 20:07:03

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2742
Репутация: +  183  -
Профиль   Отправить e-mail  

Асемблерщик, трудности понимания классов в связка с PyQt

> Т.е. наследования примитивные классы и полиморфизмы я воспроизвести как-то магу, но когда я хачу библиотеку пользовать, там внутри четрт-ти што!, и меня переклинивает.

Это из за того что ты не понимаешь того что происходит.

> Самостоятельно не магу, только открыв чей-то урок, и повторить его. Информация, логики которой я не уловил, выветривается за пол часа.

Не надо уроки повторять! Просто попытайся понять суть того что они делают. Попробуй загрузить код в отладчик и через него посмотреть как он работает.

> Решил осваивать TkInter, по ему уроки достаточно примитивные, и все ручками..

Я его настоятельно не советую использовать. Он вроде по началу и проще, но потом всё геморроем оборачивается.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#7 Сен. 25, 2018 20:53:01

Faun_
Зарегистрирован: 2018-09-23
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Асемблерщик, трудности понимания классов в связка с PyQt

Ок, тогда буду смотреть уроки PyQt..(без десигнера)
Про отладчик, я как-то и забыл. Пайчарм у меня, я как-то пару раз нажал эту кнопку, он ругнулся, и я чего-та решил что она не работает(и забыл про ее).. Разберусь с ней, ведь верно, отладка самый наглядный “урок”!. Пасип за подсказки .

Отредактировано Faun_ (Сен. 25, 2018 20:53:36)

Офлайн

#8 Сен. 26, 2018 04:59:57

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9851
Репутация: +  853  -
Профиль   Отправить e-mail  

Асемблерщик, трудности понимания классов в связка с PyQt

Faun_
Были попытки освоить высокоуровневку, но и тогда она вызывала похожую растерянность(мозг у меня реально как-то по другому устроен)
Это нужно с самого детства развиваться. Мне вот книжки покупали и клали в шкаф. Когда я до них дорастал (мог понимать), тогда я их читал (иногда несколько лет проходило с покупки до чтения). Потом домой ещё комп купили заграницей и привезли (1993 год, 386-й комп). Так что были и книги, и комп для практики. Я ночами просиживал за компом, ковырялся в DOS'е, который, если сломается, то чинить его негде. Раньше не было Интернета, сервисов по ремонту компов, всё только по знакомствам делалось. Ни у кого компов не было в городе, только на работах всяких, и то там стояли 286-е и 486-й один (ну типа сеть, а этот в роли сервера (если его можно так назвать ещё было, тогда и сети были не развиты)).

Первый язык был у меня - это QBasic, какой-то диалект бэйзика. На нём я и написал свою первую программу где-то в 1999. Не “hello, world” имеется в виду, а такую, которой я потом пользовался два-три года. Ей подавал базы от ICQ, а она сохраняла весь текст оттуда в файл. То есть берёшь базу на мегабайт и программа тебе с неё сохраняет 200 килобайт чистого текста. Эти базы были бинарные, поэтому надо было отследить начало каждого сообщения по бинарному признаку, да и концовка сообщения тоже в руки просто так не шла (я уже не помню, как я её определял). И вот эта программа вытаскивала текст из баз от ICQ98, а потом вышла ICQ99 и в ней поменяли формат баз. И моя прога перестала работать, не находила ничего в таких базах. А все уже стали переходить на новую аську. Пришлось программу дорабатывать, то есть снова эти базы открывать в HEX-режиме и читать эти последовательности, чтобы понять, как начинаются сообщения. Потом в эту программу уже понадобилось встроить меню, которое бы давало выбрать тип базы - ICQ98 или ICQ99. Всё это было сделано и работало тоже какое-то время. А потом вышла ICQ2000b, с её базами я вообще не понял, как обращаться. В итоге для ICQ2000b я не смог добавить вариант в программу. Ну короче, эта программа мне дала дофига информации. У нас там были общие компы и там стояла аська везде. И какая-нибудь баба свою аську туда добавит, посидит, потрындит, а потом аську свою запаролит на вход и типа всё в безопасности. Я подходил, просто аськины базы напрямую копировал себе (они-то не защищены были ничем, как на ладони всё - Windows 98, там не было разных прав у пользователей, пользователи различались только видом рабочего стола), а потом дома своей прогой прогонял и всё читал, все секретики. Ну там за пару лет сообщений нормально накапливалось в одном аккаунте, а аккаунтов было десяток или около того. Особенно смешно админов было читать, которые хвастались антивирусами новыми. Так я пришёл в программирование, понял, что можно для себя инструменты делать какие хочешь. Самое главное, что можешь делать инструменты, которых нет ни у кого в мире. Ты делаешь программу, которая во всём мире есть только у тебя. Поэтому никакая баба и не знает, что эта фигня существует и что её базы могут уйти куда-то. Она думает, что закрыла на пароль аську и всё, единственный путь к сообщениям перекрыт, пароль-то запрашивает, пароль надо знать типа. У неё нет инструмента, который можно взять и прочитать всё, прямо сквозь пароль.

А потом уже я стал думать про всякие C++ и подобные и стал тоже искать способ изучить это всё хотя бы базово. И с первого раза тоже ничего не получилось. Я в Borland C++ пытался программу написать и не мог понять, как работать с потоками вывода. Не мог понять, что такое поток. Так первая волна изучения C++ захлебнулась. И потом пацан (брат моего сокурсника) мне сбросил электронный курс по C++ из вуза, где он учился на программиста, и курс мне сам не помог, но я понял, что есть какие-то материалы специальные в вузах, по которым можно учиться, которые для этого специально и сформированы - для обучения программированию. Тогда уже я пошёл в магазин и купил справочник по C++. Стал его изучать, но это был просто справочник, да ещё и от Шилдта. Этот справочник дал мне понимание, что не все красивые книжки являются хорошими. Так я стал дифференцировать книги по их качеству материала. И потом в 2008 я купил уже книжку K&R2 (классическая книга по C) и она пришла мне по почте (всего 500 рублей за книгу + доставку). И так я начал программировать уже серьёзно (начал вести отсчёт от того года, сбросив период бейзика). После изучения языка по книге я понял, что всё равно не могу ничего написать на нём, так как чего-то не хватает. То есть ты пишешь программу: как писать - ты знаешь, а что писать - ты вообще понять не можешь. Оказалось, что не хватает знаний о проектировании программ. Я изучал другие языки в это же время (параллельно), чтобы получить полноценный набор инструментов в своём чемоданчике; это как художник набирает себе разные кисточки и краски в свой портфель или как сантехник набирает разные пассатижи и молотки для выполнения любой работы. Есть низкий язык - даёт скорость и бинарники небольшого размера; есть высокий язык - даёт простоту разработки и лёгкость изменения программы; есть язык обслуживания - даёт автоматизацию всех процессов при разработке. И так, изучая поэтапно ещё несколько языков, я уже стал искать материалы о проектировании программ и изучать архитектуру существующих успешных программ с открытым исходным кодом, чтобы понять, как их делали. Сам питон - типичный проект с открытым исходным кодом, имеющий разветвлённую архитектуру. Интересно наблюдать за ним, как он меняется во времени, как его перестраивают, почему в нём добавляют то или иное, а какие-то вещи выбрасывают. При этом я смотрел, как это происходит: как добавить что-то, чтобы все это приняли; как выбросить что-то, чтобы у всех ничего не сломалось в их программах, которые это используют. Все эти элементы я отслеживал и учился у себя их воспроизводить. Делал программы в которых всё это проделывал, по максимуму документировал что-то в какой-нибудь мелкой программке, чтобы понять края документации, докуда нужно документировать. Я полностью копировал программы, которые у меня в системе стоят. Полностью копировал их документацию. То есть ты мою программу от системной не отличишь, потому что она выглядит как системная. Делает что-то своё, а выглядит так же, как и все проги, которые в системе стоят. Это вот результат того, что я учился на реальных программах.

И сейчас я уже нахожусь на стадии моделирования программы, написания технического задания, документирования программы внутри (для разработчиков) и снаружи (для пользователей), создании сайта программы. Нельзя просто создать программу, нужно её ещё куда-то выложить - это дистрибуция. А чтобы её выложить, её там надо понятно описать. Потом у программы меняется версия, из-за чего сайт, который её описывает, надо менять с учётом того, что есть теперь старая версия и есть новая версия программы. И эти версии могут иметь разные фичи, соотвественно, поэтому и абсолютно разные описания. И за всем этим нужно уметь следить, чтобы можно было легко через год вспомнить, что и где в какой программе и на каком сайте.


Поэтому когда ты говоришь, что по курсам научишься ООП, я на это смотрю, как на кучу пацанов, которых я видел десятками. Они изучали ООП, чтобы научиться разрабатывать программы, в то время как ООП - это какая-то одна из парадигм, которую ты изучаешь на каком-то одном слое изучения при обучении, которое состоит из пары десятков слоёв. ООП нужно знать, но оно не научит тебя разрабатывать, потому что это мелочь. Для разработки нужно кучу слоёв пройти от самого низа до самого верха. И потом вот это всё будет использовано, чтобы сделать одну полноценную программу, которая, я тебе секрет открою, состоит из маленьких полноценных программ, которые состоят из мелких полноценных программ.



Отредактировано py.user.next (Май 28, 2020 21:52:49)

Офлайн

#9 Сен. 26, 2018 08:13:53

Rafik
Зарегистрирован: 2018-09-04
Сообщения: 231
Репутация: +  27  -
Профиль   Отправить e-mail  

Асемблерщик, трудности понимания классов в связка с PyQt

Позвольте вклиниться в разговор простому юзеру, который пописывает (слово-то какое-то неблагозвучное) макросы на StarBasic и недавно начал делать скрипты на питоне. Это всё делаю для упрощения своей работы. Оба языка знаю только “со словарём”, т.е. у меня всегда под рукой справочники и гугль, чтобы посмотреть орфографию или синтаксис. Для получения информации об каком-то объекте starbasic-а, в либреофис установлен xray. Короче, я подобен студенту-двоечнику сдувающему формулу со шпаргалки для решения своей задачи, который представляет себе как решить задачу и какими формулами проще воспользоваться.
Итак, хватит о себе. Перейдём к личностям (пардон, за такое обращение) ТС и критикующим его. Вот откровение от

py.user.next
Я в Borland C++ пытался программу написать и не мог понять, как работать с потоками вывода. Не мог понять, что такое поток.
. Ведь Вы тоже в самом начале пути спотыкались об “такие элементарные” вещи, но теперь, когда уже познали многое, Вам кажется вопрос ТС об элементарных вещах наивно детским. Не забывайте, ТС только что начал путь в питон и многое для него новое и непонятное. Кроме всего прочего, ТС, скорее всего, дальше железа и ассемблера ещё никуда не заглядывал, жил вполне комфортно в окружении этих двух миров. Теперь ему захотелось впервые заглянуть за пределы этого окружения. Увидев новое он удивляется и это естественно. Естественно многие, для спецов само собой разумеющиеся вещи, вызывают у него удивление и недоумение.
Ребята, которые критикуют ТС, мне стыдно за Вас. Вместо того чтобы быть гидом в новом, для него мире, Вы резко критикуете его. Будьте немного снисходительнее.

Офлайн

#10 Сен. 26, 2018 08:33:27

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9851
Репутация: +  853  -
Профиль   Отправить e-mail  

Асемблерщик, трудности понимания классов в связка с PyQt

Rafik
Теперь ему захотелось впервые заглянуть за пределы этого окружения.
Это всё понятно. Тут вопрос в другом. На первой странице я написал ему развёрнутый ответ и по его ситуации с обучением, и по его вопросам по коду на питоне, которые он задавал. Так он знаешь, что сделал? Он не то что спасибо не сказал за этот труд, не то что не промолчал, если ему что-то не понравилось. Он на этот ответ запулил мне два минуса. Я просто воспринял его сразу как неблагодарную свинью, которая только гадит вокруг себя. Конечно, я его сразу обозвал дебилом, чтобы ему просто было неприятно. Новичкам я всегда помогаю, потому что сам сталкивался с этим - когда приходишь на форум с вопросом, а там сидят три придурка в своей компашке и пальцы гнут только “мы вот знаем это всё, а ты дурак”, хотя у самих ни одной программы не написано, только сертификаты себе собирают.



Отредактировано py.user.next (Сен. 26, 2018 08:39:00)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version