Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Решил поучиться программированию. С чего начать?

Автор: Abs62
Дата сообщения: 19.11.2009 19:29
ya_Mickey

Цитата:
Хе, хотел бы я на тебя посмотреть, как ты через DX напрямую ваяешь ГУЙ.

Гуй я и на WinAPI напишу, зачем для этого DirectX? Плавающие и крутящиеся трёхмерные кнопки?
Автор: qiGuar28
Дата сообщения: 19.11.2009 20:38
ya_Mickey
да уж, сложновато написал.
1С, БД, бухгалтерия не интересует.

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

и если можно, следующую серию
Автор: nick7inc
Дата сообщения: 19.11.2009 20:59
Abs62

Цитата:
Значит всё-таки не через DirectX, а через сторонние библиотеки?

Allegro использует DirectX. По крайней мере, при компиляции библиотеки Allegro требуются заголовочные фвйлы DirectX.

Добавлено:
Abs62

Цитата:
Плавающие и крутящиеся трёхмерные кнопки?

Ну вы совсем ребята крутые. Я не такие сложные програмки пишу, хобби у меня такое, а не профессия. Полноценный GUI я пока не делаю (думаю всё-таки воспрользоваться позможностями Allegro, там есть свой развиваемый GUI). Про QBasic знаете? Вот я при переходе с него и искал не очень сложный для использования C++, в котором API для работы с графикой чем-то напоминает Qbasic. Вот и нашёл: MinGW+Codeblocks+GDB+Allegro.
Сейчас я занимаюсь переписыванием с нуля старой игры - Robot Odyssey под Win32.

Добавлено:
ya_Mickey

Цитата:
С++ ... для создания высокопроизводительных приложений ... Ну и в играх.
- мой случай.


Цитата:
Хочешь начать с С++ - читай Страуструпа,
Хорошая книжка, всё время на столе лежит, и как основы языка, и как справочное пособие по C++.


Цитата:
Но ООП лучше осваивать по книге Г. Буча

Я опять же по Страуструпу учил, и мне показалось, что там есть почти всё. Интересно, надо будет глянуть...


Цитата:
Опять же, многие начинают программирование с Basic-а. Сейчас есть достаточно хорошие его диалекты. Тут главное не увлечься им
Согласен, начинать лучше с него.
А какой вариант бейсика сейчас лучше использовать для обучения? Я в своё время осваивал Qbasic (QuickBasic, PDSBasic). Что там мне понравилось (и до сих пор нравится, ностальгия, наверное): среда, помощь, отладчик и интерпретатор одним куском (одна программа). В QuickBasic, PDSBasic компилятор шёл, как опция. VisualBasic мне помему-то не понравился. Наверное из-за своей ориетации на GUI Windows.
Автор: qiGuar28
Дата сообщения: 19.11.2009 21:30
nick7inc
ya_Mickey
так что посоветуете, ребят? что сейчас учить?
Автор: nick7inc
Дата сообщения: 19.11.2009 21:38
qiGuar28
Думаю, что если вы совсем в программировании "ни в зуб ногой", то с бейсика. Я бы посоветовал PDSBasic или QuickBasic (поскольку с ними много в своё время работал, и игру сделал). На них простые игры можно сделать. Но вот интерфейс Windows приложений вы там не сделаете. Вообще-то они под Дос, но под Windows XP они вроде работают (PDSBasic возмущается, но запускается).

Если важно делать программы на бейсике, использующие привычный интерфейс Windows, то стоит дождаться ответа гуру про современный вариант бейсика... Но начать будет сложнее.

Добавлено:
Сейчас поискал в сети. QB64 - продолжение серии QuickBasic. Выглядит многообещающие.. По крайней мере, есть старая среда разработки.

Добавлено:
Но, к сожалению, в QB64 нет встроенного отладчика.
Автор: qiGuar28
Дата сообщения: 19.11.2009 22:59
nick7inc
спасибо за совет.
еще просьба. дайте пожалуйста название программы полное и версию, в какой лучше всё делать. и по возможности автора учебника. ну и ссылочку на игру, если не жалко. всё-таки интересно посмотреть.
подожду что скажет наш профессионал.
Автор: AutoIT
Дата сообщения: 20.11.2009 03:24
Всем КУ!
Уважаемые гуру, хэлп. Вот решил перебираться с AutoITa на более серьезный язык. AutoITa стало фатально нехватать (1,5 года на нем писал). После продолжительного изучения современных языков программирования я сделал свой выбор касательно языка на котором буду писать дальше. Это С++. Справочным материалом я обзавелся, а вот толковую IDE подобрать не могу. Посвтуйте чтонибудь.

ЗЫ: C++Builder 2009, CodeGear RAD Studio постоянно ошибаются... Может косяк в том что у меня архитектура х64? Начинаешь работать, на вторую - третью компиляцию IDE фаталит и вылетает, Microsoft Visual Studio 2008 отказалась устанавливаться...

ЗЗЫ: Система: i7, Win7 x64

ЗЗЗЫ: Планирую разработку следующего ПО: ГУИшные апплеты, работа с БД, работа с TCP & COM.
Автор: ya_Mickey
Дата сообщения: 20.11.2009 05:20
Abs62

Цитата:
Гуй я и на WinAPI напишу

Ну по условию задачи было - "не WinAPI".

А плавающие и крутящиеся кнопочки проще всего на WPF делаются. Но это - .NET.
qiGuar28

Цитата:
1С, БД, бухгалтерия не интересует.

Вот про БД - ты зря. Их должен знать каждый уважающий себя программист. Их нуна учить сразу после того как освоишь один из языков.

По поводу авторов и программ...
Черт его знает... (Пардон за мой французский). Я учился по другим программам - начинал с ФОКАЛа - в принципе понял, что значит программирование. Потом в институте уже нам начали преподавать Паскаль (причем чистый - который Вирт изобрел, без борландовских примочек). Ну и т.д.
Мне нравятся учебники и книги от Microsoft Press. Думаю, можно найти в сети что-то типа учебника Visual Basic .NET от них.
Да. Будешь осваивать бейсик - сразу можно Visual Basic. Только тот что поновее. Пока за ГУИ не гоняйся - осваивай консоль и основные методики программирования.
Ну и как я говорил, не зацикливайся на нем. Как только освоишь основные правила составления программ, операторы языка, сможешь написать не самые простые программы - сразу уходи на C#, Java или С++.

Я вот так думаю... Может коллектив чего более путевого скажет...

nick7inc
Зря Буча не читал. Он мне как надо мозги вправил на тему "чем С отличается от С++". То есть он именно что показывает что такое ООП.
То есть у Страуструпа - синтаксис и возможности языка, у Буча - методика разработки.

Ну и после Буча глянь в сторону Александреску. Если крыша останется на месте - ты супермегапрограммист
Автор: ShIvADeSt
Дата сообщения: 20.11.2009 06:33
Начинать надо не с языка программирования ИМХО, а с понятия алгоритмов. Что толку в том, что человек знает язык, но нифига на нем написать не может? И венцом его творения будет индусский или китайский код Нас в свое время сначала научили записывать блок-схемами логику программы, и только потом начали давать азы программирования на Паскале (правда до этого я уже неплохо знал бейсик, но изучал его на факультативе). Насчет БД - согласен, как минимум надо уметь быстро набросать программу по работе с БД, желательно так же знать азы SQL.
Автор: ya_Mickey
Дата сообщения: 20.11.2009 06:41
ShIvADeSt
Ну ты прям так сразу... Алгоритмы, алгоритмы...
Сам то с блок-схем начинал? А интерес чтобы написать "Hello, world!".
Или заставить комп написать нехорошее слово учителю на монитор? (Хулиганство, да, но как интересно).
Алгоритмы надо осваивать параллельно языку. Как там у известного немца "Суха теория, mein freund, но древо жизни зеленеет".

Хотя, замечание хорошее. Алгоритмы и суперкниги Кнута я как-то выпустил из виду.
Автор: ShIvADeSt
Дата сообщения: 20.11.2009 07:35
ya_Mickey

Цитата:
Сам то с блок-схем начинал? А интерес чтобы написать "Hello, world!".

Я же говорю перед алгоритмами освоил вначале Бейсик, но работал в основном с графикой (домик там нарисовать, звездное небо). Это было в классе 6, когда информатику еще не преподавали. А вот в классе 10 (когда начали у нас ее вести) нам вначале дали алгоритмы, за что я очень благодарен. Так как после составления логики определения точки замкнутой фигуры очень многие вещи в дальнейшем стало гораздо проще делать. Можно так сказать - я вижу, как должна или будет (а это не одно и тоже ) работать код.
Автор: ya_Mickey
Дата сообщения: 20.11.2009 07:44
ShIvADeSt
Дык все-таки бейсик был вначале . То есть, сначала ты испытал кайф от того, что заставил машинку работать, а потом, когда понял, что для более сложных систем надо что-то большее - начал блок-схемы долбать.

У меня примерно так же было. Но параллельно с блок-схемами надо все-таки язык иметь - чтобы кураж не терялся.

Кстати, по поводу блок-схем. У майкрософт есть что-то отдаленно напоминающее их - WWF. Мне очень понравилась эта идея, жаль не получается ее к делу приспособить - в настоящее время пишу на плюсах и не для .NET.
Автор: data man
Дата сообщения: 20.11.2009 10:35
Бейсик, Си, Паскаль...
Программируемый калькулятор "Электроника МК-52" - вот это да !
И нужно было умудриться вместить программу в 105 шагов программной памяти и 15 регистров - это был тот еще хакинг Вот там без блок схем было не обойтись.
И знаете, хватало - были и космические симуляторы и шахматы - без GUI, конечно.

Так что, да, алгоритмы это наше все.
Автор: ya_Mickey
Дата сообщения: 20.11.2009 10:54
data man
Экий ты древний...
Что-то мне подсказывает, что у MK-52 были модули расширения памяти, а вот БЗ-34 - там да...
А по теме - слабо что сказать? Или ты предлагаешь алгоритмы с бекашки изучать? Интересно было бы там реализовать сортировку . Интересно, на сколько минут дольше была бы пузырьковая сортировка по сравнению с quicksort.
Автор: qiGuar28
Дата сообщения: 20.11.2009 11:16
ya_Mickey
Поставил Visual Basic 2008 Express Edition.
теперь значит скачать литературу и вперед изучать?
Автор: data man
Дата сообщения: 20.11.2009 11:20
ya_Mickey

Цитата:
Экий ты древний...



Цитата:
Что-то мне подсказывает, что у MK-52 были модули расширения памяти

Они были только в виде ПЗУ - вроде 3 или 4 всего выпустили, в основном инженерные расчеты и статистика.

Цитата:
Интересно было бы там реализовать сортировку . Интересно, на сколько минут дольше была бы пузырьковая сортировка по сравнению с quicksort.

А это я уже не помню, хе-хе.

Цитата:
А по теме - слабо что сказать?

Сразу с Кнута начинать, однозначно "проц" перегреется.
Например того же Вирта "Систематическое программирование. Введение."
Примеры, естественно, на Паскале и без всяких OOP-штучек.
В начале OOP только с толку собьет, ИМХО, с ним можно и попозже познакомится.
Хотя сегодня без него никуда, факт.
Так что целиком согласен с этим:

Цитата:
Знаешь, я думаю, что с С++ начинать не стоит. Им нужно заканчивать

Может привести qiGuar28 выполняющий одно и то же код на разных языках, какой больше понравиться (чисто интуитивно) - такой и выберет ?
Автор: ya_Mickey
Дата сообщения: 20.11.2009 11:48
qiGuar28
Давай. Только начинай с начала. Не лезь в книги, где много всяких умных слов про порты, БД, ГУИ и т.д.

Добавлено:
data man

Цитата:
Может привести qiGuar28 выполняющий одно и то же код на разных языках, какой больше понравиться (чисто интуитивно) - такой и выберет ?

Ага - прогу типа "Hello world" на всем от ассемблера до Erlang-а.
Думаю Perl или PHP зарулит всех.
Автор: qiGuar28
Дата сообщения: 20.11.2009 11:55
data man
было бы интересно посмотреть

ya_Mickey
понял. думаю Michael Halvorson - Microsoft Visual Basic 2008 Step by Step подойдёт.
Автор: data man
Дата сообщения: 20.11.2009 12:26
qiGuar28

Цитата:
было бы интересно посмотреть

http://www.roesler-ac.de/wolfram/hello.htm
Но раз уж Visual Basic 2008 уже поставлен, чего уж там.
Автор: qiGuar28
Дата сообщения: 20.11.2009 12:51
data man
вот php и sql самое оно. а в бэйсике как то сложно выводится. хотя может это потому что с непривычки, первый раз.

чем отличается basic от basic .net?
Автор: data man
Дата сообщения: 20.11.2009 13:02
qiGuar28

Цитата:
чем отличается basic от basic .net?

Нет, молодой человек, не в обиду, но так не пойдет - сначала юзайте Google, а потом уже на форуме спрашивайте о конкретных проблемах.

http://ru.wikipedia.org/wiki/Visual_Basic
http://ru.wikipedia.org/wiki/Visual_Basic_.NET
Автор: nick7inc
Дата сообщения: 20.11.2009 13:05
qiGuar28

Цитата:
по возможности автора учебника

Могу дать небольшой учебник по QBasic на русском в электронном виде: "Очков В.Ф. Языки программирования GW-BASIC и QBasic: сравнительное описание. М.: Энергоатомиздат, — 1992. - 80 с: ил." ISBN 5-283-02540-3, формат DjVu
Добавлено:
data man

Цитата:
В начале OOP только с толку собьет, ИМХО, с ним можно и попозже познакомится.
Может привести qiGuar28 выполняющий одно и то же код на разных языках

Согласен, надо попробовать сначала что-то написать без ООП, посмотреть, как и что получается, насколько легко или сложно программу развивать и модернизировать, насколько программа быстро (оптимально) работает. Это важно, поскольку даже когда хорошо владеешь языком надо себе отдавать отчёт, какую модель использовать: объектную или оптимальнее обойтись без неё.
Неразумно изучать параллельно языки, ибо вначале всё тяжело даётся. Он свои силы попусту растратит.
Добавлено:
qiGuar28

Цитата:
вот php и sql самое оно. а в бэйсике как то сложно выводится. хотя может это потому что с непривычки, первый раз.

Не надо сразу браться за какой-то проект, для начала надо с какой-нибудь толковой книжкой немного язык освоить. Примерчики тоже полезны бывают. Сам нарывался на такие грабли. Начинал что-то осмысленное писать, а потом выяснялось, что есть какая-то возможность языка или библиотеки, которые я сам пытаюсь реализовать в программе (естественно неоптимальным образом). Приходилось всё с начала начинать.
Автор: ya_Mickey
Дата сообщения: 20.11.2009 13:25
data man

Цитата:
Нет, молодой человек, не в обиду, но так не пойдет - сначала юзайте Google, а потом уже на форуме спрашивайте о конкретных проблемах.

Все мы были молодыми... А некоторые еще и не такими дряхлыми как мы с тобой...

Ты был бы в состоянии понять чем .NET отличается от не .NET в 10 классе? Я бы - точно нет. Не зная ООП, не зная Windows, не зная много еще чего...

Ты бы смог понять пользу наличия класса регулярных выражений для проверки правильности ввода?

А хочешь этого от молодого падавана.

Я вот на этот вопрос пока отвечать не буду. Просто не смогу объяснить.
Автор: nick7inc
Дата сообщения: 20.11.2009 13:32
Всё хорошо в своей области применения: .NET, ООП, C++, C, ... Иначе будем палить пушкой по воробьям.

Добавлено:
А писать ПО для самолёта на JAVA - это вообще криминал. И ведь нашлись те, которые хотели так сделать.
Автор: ya_Mickey
Дата сообщения: 20.11.2009 13:35

Цитата:
Всё хорошо в своей области применения: .NET, ООП, C++, C, ... Иначе будем палить пушкой по воробьям.

Ыыххх... Знать бы еще эти области...
Вернее, какие из них будут актуальными через сколько-то лет.


Цитата:
А писать ПО для самолёта на JAVA - это вообще криминал.
АБАСНУЙ!!!
Имея проц, способный переваривать Java-инструкции, это вообще круть невозможная.

Автор: data man
Дата сообщения: 20.11.2009 13:43
ya_Mickey

Цитата:
Все мы были молодыми... А некоторые еще и не такими дряхлыми как мы с тобой...

Ну, остались ещё нейроны в нейронохранилище
И с остальным согласен, да.

Цитата:
Я вот на этот вопрос пока отвечать не буду.

И я не буду. Общая тенденция сейчас такая, что ли - легче спросить, чем самому найти, поразмышлять.
А как-же удовольствие от самостоятельно найденного решения, изобретения очередного - но своего ! - велосипеда ?
Автор: nick7inc
Дата сообщения: 20.11.2009 13:43
ya_Mickey
Мне про ПО для самолёта на JAVA рассказывал друг (он работал с JAVA, поэтому с его слов знаю о данной проблеме). Суть такая, в этом языке есть так называемый "сборщик мусора". После выделения динамической памяти под какой-то объект память в последствии не надо принудительно освобождать, как того требует C++. За это отвечает довольно интересный алгоритм - "сборщик мусора". Идея, безусловно, интересная, но в то же время и опасная.
Дело в том, что он вызывается непредсказуемо (автоматически), а так же в процессе своей работы приостанавливает работу основной пограммы, пока не закончит чистку. Представляете, что будет, если в самый ответственный момент, например, когда надо шасси выпускать и садиться в кабину пилотов врывается уборщица и выгоняет их от туда?
Автор: data man
Дата сообщения: 20.11.2009 13:50
А вот придет модератор и сделает нам а-та-та.
Автор: ya_Mickey
Дата сообщения: 20.11.2009 13:51
nick7inc

Цитата:
За это отвечает довольно интересный алгоритм - "сборщик мусора". Идея, безусловно, интересная, но в то же время и опасная.

С этой зловредной тварью мне приходилось встречаться в .NET. Но мы с ним договорились. Я стараюсь выделять меньше динамических объектов, больше пользоваться пулами объектов, он мне не мешает.
Кстати, это одно из проклятий программистов-плюсовиков. В системах со сбором мусора надо по другому работать с памятью. Мне на осмысление этой истины пришлось потратить приличный кусок времени. Но потом мы с мусорщиком почти не конфликтовали.

А уборщицу лучше сразу забиндить на второй проц и периодически выгонять руками для подчистки.
Автор: qiGuar28
Дата сообщения: 20.11.2009 14:24
я всё понял. буду учиться. большое всем спасибо!

Страницы: 123456789101112131415

Предыдущая тема: Проблема в С++ Builderе


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.