![]() |
Вопрос к программистам
Если есть на форуме кто-нибудь, кто занимается разработкой приложений под Виндусь, например?
Посоветуйте, с чего начать, и в какую сторону смотреть полному новичку, который намерен освоить пару языков программирования... Знаком лишь только с Бейсиком (ещё со школы) да немного занимался программированием на калькуляторе. Я убеждён, что навыки программирования будут одними из наиболее возтребованных в ближайшее время, и, дабы оставаться ресурсонезависимым в определённой степени (в том числе и от стороннего ПО) хочу этим вопросом заняться. Просьба, однако, по этому поводу не флудить, а писать по существу заданного вопроса :) |
Цитата:
Если же хочется сразу столкнуться со всем геморроем мощи - то стоит взять Borland C++ 5.02 Builder или C#... Но освоение будет очень долгим и сложным... ... Цитата:
Если тебе нужны боевые программы то без мощи C++ и его возможности на прямую общаться с регистрами процессора - тебе не обойтись... А если простенькие игры (даже через ускоритель Direct3D) - то и VB 5/6 вполне подойдет... Так же можешь Deplhi посмотреть - логика что и у VB, но основа не Basic, а Pascal... |
Формулировка слишком абстрактная, по своему опыту могу посоветовать написать какую-либо нужную самому програмку(чем проще тем лучше), а вопросы задавать по мере их возникновения.
Один из важных вопросов в программе - хранение данных, можно поизучать варианты хранения данных: свой формат, ini, xml, база данных(удалённая и локальная, например SQLite), другие варианты. И ещё, что отличает новичка от профессионала - новичёк пытается всё реализовать сам(преимущество изучит, недостаток долго, плохо), профессионал, зная о существовании библиотек и технологий, и активно их использует(преимущество быстро, надёжность меньше зависит от разработчика). |
Цитата:
В целом это решаемый вопрос, сложность будет такая - при работе под винду так или иначе придется использовать библиотеки ActiveX-элементов, а они на 90% лицензируемы - так что если по хорошему - на них придется покупать лицензию. Цитата:
В браузере нажимаем Файл -> Сохранить... Открылось окно в котором предлагается выбрать файл для сохранения. Это окно - это ActiveX-элемент Microsoft CommonDialogControl - лицензия Microsoft, существует в 5 вариантах: 1. Открыть 2. Сохранить 3. Проводник 4. Выбрать цвет (да да - выбор цвета в PaintBrush и Adobe Photoshop - это это же окно). 5. Не помню Так что с одной стороны - да - проще использовать готовое, чем свое писать... С другой стороны - Билли ждет денужку за использование... P.S. И кстати - это окно не позволяет сохранить файл, оно позволяет только лишь выбрать указатель на него :) ... Сохранение программист делает все ж таки ручками... |
Цитата:
Цитата:
Цитата:
К примеру, есть база данных в Access. Я не хочу пользоваться стандартными средствами Access, а хочу вносить/изменять/добывать данные из этих баз так, как мне необходимо (при том, что необходимость будет постоянно "обновляться" и меняться). С чего начать? Цитата:
Я понял, начать придётся с детального разбора ОС, в которой планирую работать... |
Цитата:
VB - это интерпретируемый язык верхнего уровня (самый маломощный из всех). C# - это компилируемый язык нижнего уровня (один из самых мощнейших). Как их сравнить - не представляю??? :) ... ... Просто если ты хочешь что-то простое пока делать - то VB подойдет больше всего. Он и сам прост и писать на нем просто. ... ... ... Кстати - Java 2.0 почитай - область применения этого языка будет расти еще лет 15 я думаю (как минимум). На нем делаю - все. И программы для крограммистов (Aptana Studio) и почтовые многофункциональные клиенты (Lotus), и приложения для сотовых телефонов, и аплеты для использования в интернете... Это первый кросплатформенный язык и я думаю популярность его будет только расти год от года... Цитата:
Цитата:
Цитата:
|
веб программирование перспективнее для новичка
|
Нужно для начала задать вопрос - "А зачем?".
Если ответ - учёт (базы данных), то легче использовать готовые костыли - например 1С - заодно будешь высокооплачиваемым специалистом с очень гибкой схемы работы (от тупого кодерства по ТЗ до собственного бизнеса). Если ответ - написание приложений - тогда да, Визуал С, Делфи, .Нет. Если веб.. Веб бы не советовал - малый спектр задач.. быстро исчерпывается и придётся перепрофилироваться потом под нечто смежное. |
Не знаю как сейчас но лет 5 назад компилятор MS Visual C содержал порядка 15% функций, выдающих ошибки на этапе компиляции...
|
Цитата:
Или только 15% выдавало ошибки при наличии оных, остальные - тупо валились без сообщения об ошибках ? |
Цитата:
различные СУБД, ЕРП-системы - но в упрощенном варианте, если ларёк автоматизировать собираетесь |
Цитата:
Посоветуйте литературу/сайты для начинающих по Visual Basic и Java (поиск, естественно, выдаёт туеву хучу результатов, но, возможно, кто-то уже набивал шишки на этом и может посоветовать качественные източники) |
Цитата:
|
Цитата:
Цитата:
VB тоже не программирует базы данных в том числе и Access (но на VB ты можешь написать личную БД при желании). VB тоже работает с базами уже предопределенными способами. Сначала подключается к ним, потом выполняет типовые запросы. + VB может представлять БД в рамках собственных объектов, правда это ни на грамм работу не упрощает :) ... Цитата:
И http://emanual.ru (Емануэль) - тоже много информации (в разделе Basic есть учебник VB 5 с нуля (VB 5 от VB 6 отличается только тем, что у VB 6 интерфейс сложнее)). |
Цитата:
|
Цитата:
Цитата:
|
Цитата:
1С больше похоже на конструктор для создания различных прикладных решений со своим встроенным языком. При создании базы там не нужно особо заморачиваться со структурой баз данных, какие таблицы и как между собой будут связаны (в смысле не нужно программировать эти связки) - есть набор специфичных метаданных (справочник, документ, отчет, и т.п.) и из них как из кирпичиков Вы с помощью визуальных средств делаете то что вам нужно. В помощь там есть разные конструкторы для создания печатных форм, запросов и пр. В принципе там можно обойтись и без программирования, но как правило без него никак не получается. Короче если нужно быстро сварганить базу и обработку данных - 1С предприятие это то что надо. |
Цитата:
Если позвоните прямо сейчас - получите помимо платформы, типовое решение "Управление небольшой фирмой" в подарок ! ___ заморачиваться нужно везде |
Займись лучше системотехникой...
|
микробиологией или психологией
|
Кстати, ещё вопрос. Все материалы, с которыми я сталкивался, предполагают наличие даже у новичка каких-то довольно обширных знаний о "компиляторах", "средах", "классах/объектах/отношениях". Существует ли какая-то "азбука" для начинающего программиста, который вот прям вообще не понимает ничего?
Например, зачем нужно выделять память под каждый объект; каким образом эта память выделяется; что интерпретирует язык программирования в машиннный код, и т.д.... |
Цитата:
Основных регистров 4 - это: ax, bx, cx, dx (32Bit). eax, ebx, ecx, edx (64Bit). Не знаю как сейчас - используются ли регистры 8Bit - a, b, c, d... Это регистры процессора. На прямую с ними работать могут только языки низких уровней, в частности assembler (в переводе - сборщик) и C++ 5 (и выше, название происходит от языка B (Б), а его в свою очередь от БИСИПЛ (BCPL)). ... Если ты хочешь быть супер хакером - тебе придется как минимум учить С ++ за ради его мощи. ... Как ясно из выше написанного - языки высокого уровня в частности не имеют прямого доступа к регистрам процессоров, системному стеку и т.д. - в связи с чем их потенциальные возможности ниже, но при этом программировать на них проще и быстрее. Языки верхнего уровня в основном использую предоставляемые системой функции. ... Далее. Языки в принципе раньше можно было разделить на объектные и процедурные. Сейчас процедурные вполне нормально поддерживают объекты, а объектные - процедуры, так что я бы не сказал, что на данный момент эта градация актуальна. Процедурный метод программирования - это программирование при использовании предопределенных или заданных функций. Объектный метод - это метод программирования с использованием объектов, их свойств (переменных хранящих данные) и методов (собственно процедур (функций) объектов)... ... Пример - если "Кошка" - это объект, то Сирин - это ее свойство, а модерировать - ее метод. Так вот - объектные языки имеют одну очень важную вещь - в них введены "события" (перехваты управления). Но - все эти языки - интерпритируемы и являются языками верхнего уровня - так что скорость исполнения программ на них ниже чем у языков низкого уровня (самая низкая скорость исполнения у Java - за кросплатформенность приходится платить). Компилируемые языки - это языки, код программ на которых напрямую переводится в машинный код. Интерпретируемые языки - это языки, код которых сначала переводится в аналоговый, а потом компилируется для исполнения - при чем каждый раз при запуске программы. C++, assembler - компилируются. VB, Delphy, PHP, ActionScript - интерпретируются. Примечание: VB и Delphy имеют возможность готовую програму загнать в системный инсталлятор - на этом этапе они безвозвратно компилируются. ... Ну вот в принципе теперь ты все знаешь :) ... Не, еще чуть чуть про процедурные и объектные языки... Вот представь - есть у тебя набор свободных действий (идет, упала, села) и есть элемент - кошка. Чтобы она пошла ты делаешь так: 1. Что делать? 2. Идти. 3. Кому? 4. Кошке. Это процедурный язык. А в объектноориентированном языке у тебя есть объект кошка, а уже непосредственно у кошки есть методы (функции/процедуры) и по этому чтобы объект-кошка пошла ты делаешь так: 1. Кто? 2. Кошка. 3. Что делать? 4. Идти. Кроме того - ты объекту кошке можешь назначить событие, например: 1. Если чо? 2. Если кошка пошла. 3. Тогда сделать что?. 4. Упасть и сдохнуть. ... Процедурные языки не предоставляют возможности использовать события предопределенные системой (потому что она их не предопределяет), но некоторые заморачиваются и делают эмуляторы сами. ... О резервации памяти. В языках верхнего уровня это невозможно. В языках низкого уровня это можно сделать и делают это для того, чтобы выделить для приложения ОП, на случай если вдруг юзер или сис.процессы запустят тонну сторонних приложений - то эти приложения не смогут забить всю память так, что тебе ничего не останется. |
Весьма познавательно, спасибо. А где этому научиться?
В принципе, подумываю о заочном в какой-нибудь "компьютерной академии", но для начала хочу попробовать самостоятельно. Можешь посоветовать литературу/форумы, где разъясняется именно эта информация, а не только языки программирования, предполагающие определённый багаж знаний у меня? Если короче - где/как ты этому учился? |
Цитата:
Скрытый текст:
Есть достойные курсы |
|
Цитата:
Спасибо! |
Я тоже новичок в программировании, но уже начал ковыряться. Выбрал для себя Delphi. Язык прост в освоении и очень функционален. Моя методика изучения такова. Я взял самую простую книгу по Паскалю (прародитель Delphi, во многом похож) - Турбо – Паскаль 7.0 Самоучитель для школьников, студентов и начинающих. Прочесть и понять можно за неделю. Из неё усвоил синтаксис языка, основные конструкции. Попрактиковался, написал десяток-другой несложных программ, которые позволили мне закрепить прочитанное. А дальше захотелось повысить планку и я полез ковырять Дельфи. Для начала захотелось узнать, в чём его отличие от Паскаля. Прочитал 2 первые главы из Учебное пособие по программированию на языке Delphi, которые расширили и дополнили мои знания (можно начать сразу с них, но в первой книжке объяснение проще некуда). Программы работающие в консольном режиме начали надоедать, захотелось кнопочки, формочки и т.п. вещи, а это отдельный раздел - объектно-ориентированное программирование. Довольно сложная тема для начинающего. Перечитал главы по теме из разных книг по Дельфи, но там слишком нудно написано и долго вникать в суть, а мне надо уже писать программы:pardon: И тут я наткнулся на одни ламерские курсы, где легко и просто было изложено всё то, что я не понял в книгах. После просмотра первого видео написал несложную, но в то же время полноценную программу с кнопками, анимацией, всплывающими окнами, меню и т.д. Практикум был отличный.
В общем, мне не нужно быть профессиональным программистом, я учусь для себя, поэтому всякие там толстые книги принципиально не приемлю. Чем короче путь до цели, тем лучше. Мой принцип - от общего к частному, нахвататься вершков, с помощью которых уже воплощать в жизнь первые задумки, а по мере практики восполнять недостающие пробелы с помощи справочников и поисковиков. Подобным образом в начале выстраивается мозаика, которая со временем заполняется недостающими элементами. Таким же макаром я начал изучать PHP. Прошёл месяц с момента обучения, но текущие знания уже позволяют мне кое-что делать. |
Цитата:
Не нужно передергивать я писал совсем о другом Цитата:
|
Цитата:
Если о себе, то у меня был начальный уровень знаний примерно как у Вас (Basic, DBase III), т.е. специально на программиста я не учился, но работа эта нравилась. Устроился в ЖЭУ программистом (реально работал системным администратором), потом устроился в торговую фирму - у них была 1С-ка, к ней книги идут по конфигурированию и администрированию, сидел изучал и ковырял потихоньку её. Потом устроился в 1С франчайзинговую фирму, ну а там уже набрался большого опыта на множестве клиентов. Цитата:
|
Цитата:
|
Если для самообразования то VB или Delphi они легки на подъём, если для погружения и возможно финансовой отдачи то нужно изучать C++.
Есть IDE удобное для начинающих решивших пощупать C++ называется QT-Creator имеется справка и примеры на русском, также программа портирована с linux на windows. Проект быстро развивается спонсор и создатель фирма Nokia, попробуйте её вам понравится. |
Цитата:
Из универсальных языков программирования (т.е. подходящих как для веб, так и для настольных приложений) в массовой разработке в ближайшие годы будут доминировать C# и Java. Поскольку первое является средством укрепления позиций M$, то остаётся только Java. Цитата:
2ilehome: Nokia фактически подчинена M$, так что не стоит их тут рекламировать. ______ [1] Если найдёшь в электронном виде - ссылку сюда. |
/bin/bash на С написан, а qt-creator и библиотеки qt выпущены Nokia под лицензии LGPL, точнее не выпустили а выбросили как не конкурентоспособную среду, но это не умаляет достоинств этой IDE. Крупные производители маленького железа сейчас ориентируются на платформу Андроид.
кстати вот ссылка на книгу Хортсмана в pdf http://www.tusur.ru/export/sites/ru..../session/2.pdf книга весьма полезная |
Цитата:
Ссылку на седьмое издание кидать? |
Цитата:
|
| Часовой пояс GMT +3, время: 09:55. |
Осознание, 2008-2016