Категории каталога

Программинг [38]
Программинг, уроки, формулы, туториалы
Dark Basic [31]
Помощь начинающим в Dark Basic (Статьи,учебники,книги)
Blitz 3d [7]
Статьи и уроки по Blitz 3d
C/C++ [8]
Статьи по C/C++
Delphi [12]
книги, уроки, статьи, программирование в Delphi
Game Maker [12]
Статьи, помощь для программистов игроделов на Game Maker
Ассемблер (Assembler) [5]
Стати по Ассемблеру для начинающих и продвинутых программистов
ВЕБ-ПРОГРАММИРОВАНИЕ [5]
Уроки и статьи по ВЕБ-программированию
Scirra Construct [0]

Форма входа

Приветствую Вас Гость!

Логин:
Пароль:

Поиск

Друзья сайта



    Случайное фото

    Статистика

    Онлайн всего: 2
    Гостей: 2
    Пользователей: 0

Поддержите наш проект

WebMoney:
R309699065243
U292079291240
Z373355457648

Счётчики


Rambler's Top100

Наш опрос

Какой почтовый клиент вы используете?
Всего ответов: 105

Статистика

$COUNTERdiv>

Каталог статей

Главная » Статьи » Программинг » Программинг

Выбираем язык программирования
Автор : DeHunter
Мыло : cpp_lamer@list.ru
Сайт : dehunter.narod.ru

Выбираем язык программирования

Новичку очень тяжело определится с тем какой язык выбрать.
Эта статья поможет определится
Уровни языков
Языки программирования делятся на 3 уровня.
Машинный язык - Это просто последовательность машинных инструкций непосредствено выполняемых процом.
Низкоуровнёвые языки - В этих языках одна инструкция соответствует одной инструкции машинного
кода. Предназначаются для конкретных семейст процов.
Высокоуравнёвые языки - Эти языки самые популярные сейчас. Вы уже наверное слышали про паскаль, си, си++.
В этих языках одна команда может соответствовать десяткам команд на низкоуравнёвом языке.
Зачем нужны разные уровни
Вы наверное думаете что на низкоуравнёвых языках уже никто не пишет. Это не так. Низкоуравнёвые языки дают полный контроль над программой. Конечно если вы будете писать под винду вы не получите полного контроля. Программы написаные на низкоуравнёвых языках очень быстрые и маленькие. Когда я первый раз написал программу на низкоуравнёвом языке(ассемблере) я был просто в шоке от её размера(пару сотен байт). Вы все играли или видели игры типа кваки, контры, анрила. Вот в играх скорость играет очень важную роль. Вы наверное замечали что игры с одинаковой графикой жрут разное кол-во ресурсов. Всё это изза того что в одной игре взят разумный алгоритм( последовательность действий) и сделаны ассемблерные вставки. Я уверен что весь софт на вашей машине пиратский. Чтобы взломать прогу необходимы хорошие знание ассемблера. Но теперь посмотрим с другой стороны. Вы не хотите писать игры и ломать программы. Вы хотите спокойно создавать проги которые не требуют высокой скорости и маленького размера. Тогда вам ассемблер нафиг не нужен. Вы можете его изучить чисто для того чтобы понимать как что работает. А так сейчас понаписано разных MFC. Разработка программы на ассемблере занимает гораздо больше времени чем разработка той же программы на си, паскале и др. высокоуровнёвых языках. Писать браузеры, почтовые клиенты, редакторы текста на ассемблере под винду не есть разумно. Оно то конечно будет быстрее работать но ошибок в нём будет больше. И времени на изучение ассемблера нужно гораздо больше чем на изучение паскаля. Вобшем каждый язык под свою определённую задачу.
Краткое описание языков
Давайте рассмотрим наиболее популярные языки программирования. Наиболее популярными языками на сегодняшний день являются си, си++, ассемблер, паскаль.

C, C++ - СИ это высокоуровнёвый язык программирования который был разработан для написания операционной системы unix. Сейчас сушествует множество компиляторов(программы которые преобразовуют сишный код в код который понятен процу). Самые известные из них это конечно же gcc, Microsoft Visual c++, Borland c++. Лидером в производстве компилятором является фирма борланд. Си это язык который используется повсюду. Его использовали для разработки операционных систем, создания спец эффектов к фильму "Звёздные войны", созданию программ под различные опер. системы. Си очень гибкий язык с очень кратким и красивым синтаксисом. Большинство того софта который вы сейчас используете написан на си. Этот язык должен знать каждый программист. На этом языке пишут игры. Код выдаваемыый компиляторами один из самых быстрых. Самые известные вирусы написаны на нём. Я уверен что вы слышали про MyDoom. В сети валяется его исходник на си++. На си таккже пишутся експлоиты(программы которые используют дыры в других программах для какогото действия). Вскоре программисты решили облегчить себе труд и создали си++. В си++ поддержуются многие удобные штуки.Такие как классы, полиморфизм и др. Если вы хотите изучать этот язык то для начала купите книгу по си, а потом уже по си++.
Я знаю 2 отличные книги -
Стивен Прата - Язык программирования СИ.
Г.Шилдт - Самоучитель С++.

Pascal(Паскаль) - Этот язык был разработан специально для обучения программированию. Сейчас его изучают в школах. Код выдаваемый компиляторами более медленный чем код сишных прог. Синтаксис не такой красивый. Наиболее популярными компиляторами являются Turbo pascal, Delphi. Оба компилятора борландовские. Турбо паскаль оч. активно используют в школах. Сейчас этот язык очень популярен изза его простаты. На делфи можно склепать программу под винду за пол часа. Но не думайте что всё так хорошо в этом делфи. Код который она выдаёт это ужас. Писать на нём игры есть дибилизм. Даже ассемблерные вставки не помогут. Вобшем делфи это RAD(Быстрая разработка программ). Если вам поначалу будет очень тяжело учить си то попробуйте паскаль. Сейчас очень много людей пишут на делфи. Большинство из них бегает по форумам и ишет нужный кусок кода чтобы чтото сделать. На паскале не пишут эксплоиты, хотя это реально. Вирусы на паскале писать тоже не очень. Вобшем язык был создан для обучения, а не для создания здоровых проектов которые требуют скорости. Делфи заточена под базы данных.

Книги - Кандзюба С.П. , Громов В.Н- Delphi 6/7. Базы данных и приложения. (книга восновном посвяшена базам данных, но основы паскаля в ней есть).

Assembler(Ассемблер) - Ну и наконец самый древний и самый быстрый язык сегодняшнего обзора. Самыый быстрый софт пишется на нём. Это низкоуравнёвый язык. Разработка программы на нём длится долго но программа потом летает. Он подходит для написания всего. От архиваторов до операционных систем. Юникс был написан не только на си. Там были ассемблерные вставки. Это говорит о том что даже высокоуровнёвые языки не смогли заменить ассемблер. В вышеперечисленых языках есть встроенный ассемблер с помошью которого можно делать ассемблерные вставки. Кроме скорости он даёт возможность творить такое что нельзя сделать не на одном высокоуровнёвом языке. Драйверы устройств написаны на нём. Но в этом языке всё приходится делать ручками. В высокоуровнёвых функцию вызвал и всё. Тута такое не прокатит. Но это и хорошо. Потомучто это даёт полный контроль над программой. Правда исходник одной и тойже программы на си и на ассемблере различается в 2, 3 раза( на асме больше писать надо). Если гденибудь допустить ошыбку то всей программе гаплык. И нужно часами сидеть отладчиком вылавливать эту ошыбку. Я хочу сказать что написание программ на ассемблере требует полной концентрации. Я уже говорил что хорошо выучив этот язык вы сможете ломать программы и писать великолепные вирусы.
Книги -
Питер Абель - Ассемблер. Язык и программирование для IBM PC.
Н.Г. Голубь - Исскуство программирования на ассемблере.

Что мне выбрать ?
Я советую сначала попробывать си. Если не получится то паскаль. А потом выучить ассемблер. Не в коем случае сначала не садитесь за такие программы как делфи или Си++ Билдер. Они жутко тупят начинаюшего программера. Желательно перед тем как начать изучать программирование иметь хороший опыт работы с компом. Желательно уметь работать в досе. А если вы загарелись изучать nix системы то без си вам никак =).
Ну и напоследок несколько ссылок -
codenet.ru
dehunter.narod.ru =)
Я буду благодарен за любые коментарии по этой статье которые вы пришлёте мне на Успехов !
Категория: Программинг | Добавил: quadrathell (04.11.2010)
Просмотров: 3855 | Рейтинг: 5.0/2 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]