Форум Trainsim  

Вернуться   Форум Trainsim > Разное > IT, компьютеры, электроника

Ответ
 
Опции темы Опции просмотра
Старый 17.12.2016, 15:00   #1
TRam_
Матёрый пользователь
 
Аватар для TRam_
 
Регистрация: 18.02.2008
Сообщений: 8,703
Вы сказали Спасибо: 1,424
Поблагодарили 2,365 раз(а) в 1,319 сообщениях
TRam_ стоит на развилке (репутация по умолчанию)
По умолчанию Языки - с чего начать новичку и почему

Цитата:
Книжка мне понравилась и все тут.
Переучиваться с Бейсика на остальные языки программирования тяжелее всего. Один из известных программистов когда-то писал "кто учился программировать на бейсике - тот потерян для программирования".

Цитата:
Это свойства, а не код. А мне нужен чистый код. Чтобы после каждого действия я мог видеть изменения в коде.
Ну вот в VB такого просто нет. Есть библиотеки, в которых код, исполняющий создание и управление формой, уже создан, а тебе предоставляется возможность только настроить "параметры окна" и "функции, обрабатывающие такое-то и такое-то взаимодействие". И, как я понял, просмотреть именно на применение параметров тут нельзя (в отличии от многих других сред визуального программирования типа Делфи или VisualStudio), но меняет это не так много (так что если просто хочешь посмотреть на примеры, проще это сделать тут - https://ru.wikipedia.org/wiki/Visual_Basic). Код обработчиков тебе всё равно надо написать самому, он будет иметь не много общего по сравнению с "установкой начальных параметров". А учиться "как писать код" лучше всего именно на консольном приложении, без ООП.

Цитата:
VB от просто BASICA я так понимаю только визуализацией отличается
нет. В простом бэйские нет объектов (https://ru.wikipedia.org/wiki/%D0%9E...BD%D0%B8%D0%B5), а VB они есть, и ими являются все элементы интерфейса...
__________________
местный зомбяк

Последний раз редактировалось TRam_; 17.12.2016 в 15:08.
TRam_ вне форума   Ответить с цитированием
Старый 01.01.2007, 12:00  
Яndex
Спонсор
 
 
Регистрация: 01.01.2007
Сообщения: 500


Реклама показывается изредка по случайному принципу
По умолчанию РЕКЛАМА

 
Старый 17.12.2016, 18:24   #2
сандро
Матёрый пользователь
 
Аватар для сандро
 
Регистрация: 20.08.2007
Сообщений: 6,309
Вы сказали Спасибо: 34
Поблагодарили 1,154 раз(а) в 603 сообщениях
сандро стоит на развилке (репутация по умолчанию)
По умолчанию

1. Кто сказал, что мне понравится программирование? И из меня вообще получится хоть какой то программист. Это процесс долгий. Может помучаюсь с книжкой и брошу это занятие.
2. Я все понял, спасибо за подсказки.
3. Что такое объекты? Объясните простым языком человеку, который не знает что такое программирование?
4. Популярный тест "точка по кругу" или "таблицы шульте", можно сделать в VB без проблем.
__________________
Вышел покурить на лестничную клетку, а там ребята стоят - вакцинируются.
сандро вне форума   Ответить с цитированием
Старый 17.12.2016, 19:01   #3
TRam_
Матёрый пользователь
 
Аватар для TRam_
 
Регистрация: 18.02.2008
Сообщений: 8,703
Вы сказали Спасибо: 1,424
Поблагодарили 2,365 раз(а) в 1,319 сообщениях
TRam_ стоит на развилке (репутация по умолчанию)
По умолчанию

Цитата:
Что такое объекты? Объясните простым языком человеку, который не знает что такое программирование?
Объекты (экземпляры классов) - элементы программы, которые могут проводить над собой некие заложенные в них действия согласно кода программы. Например, объектом является кнопка на форме, кнопке можно задать новую надпись или задать новые координаты, тем самым переместив её на экране.

Цитата:
Популярный тест "точка по кругу" или "таблицы шульте", можно сделать в VB без проблем
Если сможешь найти элемент, который выглядит как квадрат и который можно вращать, а также разберёшься как подключить периодические изменения цвета к таймеру, то может быть и да. Но вот начинать надо не с этого. Для начала попробуй сделать хотя бы кнопку, которая бы двигала другие кнопки по экрану или меняла в них надписи (или цвет заливки).
__________________
местный зомбяк

Последний раз редактировалось TRam_; 17.12.2016 в 19:04.
TRam_ вне форума   Ответить с цитированием
Старый 17.12.2016, 20:11   #4
сандро
Матёрый пользователь
 
Аватар для сандро
 
Регистрация: 20.08.2007
Сообщений: 6,309
Вы сказали Спасибо: 34
Поблагодарили 1,154 раз(а) в 603 сообщениях
сандро стоит на развилке (репутация по умолчанию)
По умолчанию

Я та почитал что такое объектно-ориентированное программирование и ничего не понял. Как я вижу программирование? Разрабатываем алгоритм. Допустим, при нажатии на кнопку "p" (у каждой клавиши есть сэкн код или как там его) даем команду винде на воспроизведение какого-то звука с определенной громкостью, с определенной частотой, при нажатии на клавишу "+" частота звука допустим будет увеличиваться на 11025 ГЦ, при нажатии "-" частота будет падать на тоже значение, при нажатии на клавишу "0" звук прекратит проигрываться. Потом это хозяйство компилируется.
Открываем викимапию: Методы
Процедуры и функции, связанные с классом. Они определяют действия, которые можно выполнять над объектом такого типа, и которые сам объект может выполнять.

Классы могут наследоваться друг от друга. Класс-потомок получает все поля и методы класса-родителя, но может дополнять их собственными либо переопределять уже имеющиеся. Большинство языков программирования поддерживает только единичное наследование (класс может иметь только один класс-родитель), лишь в некоторых допускается множественное наследование — порождение класса от двух или более классов-родителей. Множественное наследование создаёт целый ряд проблем, как логических, так и чисто реализационных, поэтому в полном объёме его поддержка не распространена. Вместо этого в 1990-е годы появилось и стало активно вводиться в объектно-ориентированные языки понятие интерфейса. Интерфейс — это класс без полей и без реализации, включающий только заголовки методов. Если некий класс наследует (или, как говорят, реализует) интерфейс, он должен реализовать все входящие в него методы. Использование интерфейсов предоставляет относительно дешёвую альтернативу множественному наследованию.

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

Инкапсуляция обеспечивается следующими средствами:

Или: Появление в ООП отдельного понятия класса закономерно вытекает из желания иметь множество объектов со сходным поведением. Класс в ООП — это в чистом виде абстрактный тип данных, создаваемый программистом. С этой точки зрения объекты являются значениями данного абстрактного типа, а определение класса задаёт внутреннюю структуру значений и набор операций, которые над этими значениями могут быть выполнены. Желательность иерархии классов (а значит, наследования) вытекает из требований к повторному использованию кода — если несколько классов имеют сходное поведение, нет смысла дублировать их описание, лучше выделить общую часть в общий родительский класс, а в описании самих этих классов оставить только различающиеся элементы.

Необходимость совместного использования объектов разных классов, способных обрабатывать однотипные сообщения, требует поддержки полиморфизма — возможности записывать разные объекты в переменные одного и того же типа. В таких условиях объект, отправляя сообщение, может не знать в точности, к какому классу относится адресат, и одни и те же сообщения, отправленные переменным одного типа, содержащим объекты разных классов, вызовут различную реакцию.

Отдельного пояснения требует понятие обмена сообщениями. Первоначально (например, в том же Smalltalk) взаимодействие объектов представлялось как «настоящий» обмен сообщениями, то есть пересылка от одного объекта другому специального объекта-сообщения. Такая модель является чрезвычайно общей. Она прекрасно подходит, например, для описания параллельных вычислений с помощью активных объектов, каждый из которых имеет собственный поток исполнения и работает одновременно с прочими. Такие объекты могут вести себя как отдельные, абсолютно автономные вычислительные единицы. Посылка сообщений естественным образом решает вопрос обработки сообщений объектами, присвоенными полиморфным переменным — независимо от того, как объявляется переменная, сообщение обрабатывает код класса, к которому относится присвоенный переменной объект. Данный подход реализован в языках программирования Smalltalk, Ruby, Objective-C, Python.

Однако общность механизма обмена сообщениями имеет и другую сторону — «полноценная» передача сообщений требует дополнительных накладных расходов, что не всегда приемлемо. Поэтому во многих современных объектно-ориентированных языках программирования используется концепция «отправка сообщения как вызов метода» — объекты имеют доступные извне методы, вызовами которых и обеспечивается взаимодействие объектов. Данный подход реализован в огромном количестве языков программирования, в том числе C++, Object Pascal, Java, Oberon-2. Однако, это приводит к тому, что сообщения уже не являются самостоятельными объектами, и, как следствие, не имеют атрибутов, что сужает возможности программирования. Некоторые языки используют гибридное представление, демонстрируя преимущества одновременно обоих подходов — например, CLOS, Python.

Концепция виртуальных методов, поддерживаемая этими и другими современными языками, появилась как средство обеспечить выполнение нужных методов при использовании полиморфных переменных, то есть, по сути, как попытка расширить возможности вызова методов для реализации части функциональности, обеспечиваемой механизмом обработки сообщений.

От таких слов хочется блевать.
__________________
Вышел покурить на лестничную клетку, а там ребята стоят - вакцинируются.
сандро вне форума   Ответить с цитированием
Старый 17.12.2016, 22:40   #5
Dublin
Матёрый пользователь
 
Аватар для Dublin
 
Регистрация: 24.05.2010
Адрес: Херсон
Сообщений: 1,565
Вы сказали Спасибо: 871
Поблагодарили 695 раз(а) в 285 сообщениях
Dublin стоит на развилке (репутация по умолчанию)
По умолчанию

Вот хорошо написано про ООП
Часть 1
Часть 2
__________________
хоп хэй лалалэй
Dublin вне форума   Ответить с цитированием
Старый 18.12.2016, 00:08   #6
сандро
Матёрый пользователь
 
Аватар для сандро
 
Регистрация: 20.08.2007
Сообщений: 6,309
Вы сказали Спасибо: 34
Поблагодарили 1,154 раз(а) в 603 сообщениях
сандро стоит на развилке (репутация по умолчанию)
По умолчанию

Это уже лучше. Я так понимаю в обычном программировании ("в блокноте") никаких классов и объектов нет?
__________________
Вышел покурить на лестничную клетку, а там ребята стоят - вакцинируются.
сандро вне форума   Ответить с цитированием
Старый 18.12.2016, 02:52   #7
TRam_
Матёрый пользователь
 
Аватар для TRam_
 
Регистрация: 18.02.2008
Сообщений: 8,703
Вы сказали Спасибо: 1,424
Поблагодарили 2,365 раз(а) в 1,319 сообщениях
TRam_ стоит на развилке (репутация по умолчанию)
По умолчанию

Цитата:
Я так понимаю в обычном программировании ("в блокноте") никаких классов и объектов нет?
Собственно любое программирование - это и есть написание кода "в блокноте" (размещение элементов на форме и настройка их свойств - это не программирование, а вёрстка). Наличие или отсутствие поддержки объектов определяется только языком программирования, и они могут применяться в том числе для "простых" консольных приложений. Язык VisualBasic объекты поддерживает и широко использует.
__________________
местный зомбяк
TRam_ вне форума   Ответить с цитированием
Старый 18.12.2016, 12:05   #8
сандро
Матёрый пользователь
 
Аватар для сандро
 
Регистрация: 20.08.2007
Сообщений: 6,309
Вы сказали Спасибо: 34
Поблагодарили 1,154 раз(а) в 603 сообщениях
сандро стоит на развилке (репутация по умолчанию)
По умолчанию

Короче прежде чем программист начнет писать код в блокноте, он нарисует себе схемку? Что из чего следует?
__________________
Вышел покурить на лестничную клетку, а там ребята стоят - вакцинируются.
сандро вне форума   Ответить с цитированием
Старый 18.12.2016, 13:14   #9
alex8888
Матёрый пользователь
 
Аватар для alex8888
 
Регистрация: 11.05.2007
Адрес: Германия, Пфорцхайм
Сообщений: 1,661
Вы сказали Спасибо: 1,959
Поблагодарили 2,392 раз(а) в 771 сообщениях
alex8888 стоит на развилке (репутация по умолчанию)
По умолчанию

Недавно попался сайтик и книжки про язык "Дракон". Скорее всего это пока только описание работы с блок-схемами, но сами схемы действительно составлены очень грамотно и точно. Жалко, что нет пока "интертрепатора" для разработки пользовательских приложений, но вот в разработке алгоритма очень даже неплохо.
__________________
Ложусь поздно, встаю рано - романтика!
alex8888 вне форума   Ответить с цитированием
Старый 18.12.2016, 13:31   #10
сандро
Матёрый пользователь
 
Аватар для сандро
 
Регистрация: 20.08.2007
Сообщений: 6,309
Вы сказали Спасибо: 34
Поблагодарили 1,154 раз(а) в 603 сообщениях
сандро стоит на развилке (репутация по умолчанию)
По умолчанию

А что такое интерпретатор?
__________________
Вышел покурить на лестничную клетку, а там ребята стоят - вакцинируются.
сандро вне форума   Ответить с цитированием
Старый 18.12.2016, 13:44   #11
Garikk
Матёрый пользователь
 
Аватар для Garikk
 
Регистрация: 11.05.2007
Адрес: Москва
Сообщений: 3,774
Вы сказали Спасибо: 496
Поблагодарили 1,442 раз(а) в 857 сообщениях
Garikk стоит на развилке (репутация по умолчанию)
По умолчанию

Не путайте человека, ООП, схемки и т.п.

нужно почитать школьный учебник по информатике для начала..и не пытаться сразу в дебри лезть.
__________________
!!Russian Railways Forever!!
МТЖДТ им. Ф.Э. Дзержинского, ПС12->ПС42 (1999-2003), Славное депо Николаевка ЛВЧД-4 (2003-2006)
Garikk вне форума   Ответить с цитированием
Старый 18.12.2016, 13:59   #12
alex8888
Матёрый пользователь
 
Аватар для alex8888
 
Регистрация: 11.05.2007
Адрес: Германия, Пфорцхайм
Сообщений: 1,661
Вы сказали Спасибо: 1,959
Поблагодарили 2,392 раз(а) в 771 сообщениях
alex8888 стоит на развилке (репутация по умолчанию)
По умолчанию

Возьми ка ты для начала вот эту книженцию. Для самого начала можно почитать. А там будет видно, интересно тебе это или нет.
__________________
Ложусь поздно, встаю рано - романтика!
alex8888 вне форума   Ответить с цитированием
Старый 18.12.2016, 14:43   #13
SmaiL
Матёрый пользователь
 
Аватар для SmaiL
 
Регистрация: 12.05.2009
Адрес: Кременчуг-пасс. Маневровая ветка, район элеватора
Сообщений: 5,802
Вы сказали Спасибо: 1,665
Поблагодарили 2,495 раз(а) в 1,080 сообщениях
SmaiL хороший собеседникSmaiL хороший собеседник
Отправить сообщение для SmaiL с помощью ICQ Отправить сообщение для SmaiL с помощью Skype™
По умолчанию

А почему все против начала изучения программирования с С++? Ну серьезно..
SmaiL вне форума   Ответить с цитированием
Старый 18.12.2016, 15:09   #14
GeneZone
Матёрый пользователь
 
Аватар для GeneZone
 
Регистрация: 19.02.2008
Адрес: Хлебный город
Сообщений: 2,615
Вы сказали Спасибо: 1,508
Поблагодарили 728 раз(а) в 439 сообщениях
GeneZone стоит на развилке (репутация по умолчанию)
По умолчанию

Цитата:
Сообщение от сандро Посмотреть сообщение
А что такое интерпретатор?
Интерпретатор - это "переводчик" команд языка высоко уровня в машинный или объектный код. В отличие от компилятора, интерпретатор работает "на лету", т.е. каждая строка программы, при вводе(нажатии клавиши "ввод" или "Enter") или запуске программы командой RUN(если это, к примеру, BASIC), переводится в код и сразу же определяется наличие ошибок. Вернее, сначала проверяется наличие ошибок, потом перевод в код и выполнение.
__________________
Электрослужба ОГЭ/СРК-1
Ник GeneZone® зарегистрирован

Последний раз редактировалось GeneZone; 18.12.2016 в 15:18.
GeneZone вне форума   Ответить с цитированием
Старый 18.12.2016, 15:39   #15
сандро
Матёрый пользователь
 
Аватар для сандро
 
Регистрация: 20.08.2007
Сообщений: 6,309
Вы сказали Спасибо: 34
Поблагодарили 1,154 раз(а) в 603 сообщениях
сандро стоит на развилке (репутация по умолчанию)
По умолчанию

Цитата:
Сообщение от SmaiL Посмотреть сообщение
А почему все против начала изучения программирования с С++? Ну серьезно..
Объясню почему я купил две книжки по VB и Phytonу, а не по С. Научиться программировать, я хотел давно. Но я не собираюсь принимать участие в олимпиадах по программированию, где надо разрабатывать математический алгоритм. Я хочу скажем для начала создать программку как у психолога -"тока по кругу". И мне нужна такая книга, где после описания листинга будет пример работы программы. Т.е. либо это чистый EXE файл, либо ЕХЕ + DLL. Либо только DLL. А таких книг я не встречал. Кто подскажет, ну что, куплю. Электронные книги в формате DJVU или PDF мне не интересны. Я человек старой советской закалки и мне нужна нормальная бумажная книга. Нужен упор на графику. Ну например игра "пасьянс".
__________________
Вышел покурить на лестничную клетку, а там ребята стоят - вакцинируются.
сандро вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С чего начать в Trainz Simulator??? Mihlik75 Железные дороги 9 05.05.2016 21:55
Как начать ездить с нами в мультиплеерах? APK-LVDZ OpenRails - Мультиплеер: Линейный пункт 0 17.12.2015 21:09
Информация для новичков. Как начать играть в мультиплеер RTrainSim MJack RTrainSim - Линейный пункт 0 14.08.2015 21:24
Помогите новичку Fanat36 TrainZ - Подвижной состав 1 13.07.2013 19:46
Помощь новичку. МашинистПермь MSTS - Сценарии 1 15.09.2012 22:14


Текущее время: 15:01. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
© 2001-2019, Администраторы и разработчики Клуба Trainsim
TopList Нажми для появления дома Trainsim на карте Intermap
Что это?