Разместите нашу кнопку!

Новые статьи:

Programming articles

Создание сайтов на шаблонах

Множество вариантов работы с графикой на канве

Шифруем файл с помощью другого файла

Перехват API функций - Основы

Как сделать действительно хороший сайт

Создание почтового клиента в Delphi 7

Применение паскаля для решения геометрических задач

Управление windows с помощью Delphi

Создание wap сайта

Операционная система unix, термины и понятия

SQL враг или друг

Возникновение и первая редакция ОС UNIX

Оптимизация проекта в Delphi

Ресурсы, зачем нужны ресурсы

Термины программистов 20 века

Советы по созданию собственного сайта с нуля

Шифруем файл с помощью пароля

Фракталы - геометрия природы

Crypt - Delphi программа для шифрования

Рассылка, зачем она нужна и как ее организовать?

Учебник по C++ для начинающих программистов

Уроки для изучения ассемблера

Загадочный тип PCHAR

Средства по созданию сайтов

Операторы преобразования классов is и as

Borland Developer studio 2006. Всё в одном

Создание базы данных в Delphi, без сторонних БД


Software engineering articles



Архив рассылки

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

48 выпуск

Клуб | Лабораторные работы | Справочники | Книги | Статьи | Архив рассылки | Форум | Основы Delphi | Блог

 
Клуб программистов
  чета поздно :) выпуск 48
 
 
От редактора

Да, да... можете меня ругать. Я забыл выпустить рассылку на прошлой неделе. Теперь вот в среду выпускаю номер 48... Следующий выпуск будет наверно в понедельник на следующей неделе.

А сегодня в выпуске: интервью с нашим любимым админом Alar' ом, а также статья в Московском журнале "Куда пойти учиться", от rpy3uH ' а урок об обратке исключений в Delphi и еще немного юмор. Удачи вам!

 
 
Профессия программист - Журнал “куда пойти учиться”
В его голове цифры, алгоритмы и оригинальные идеи складываются в полезные, простые и доступные программы, способные облегчить жизнь миллионам пользователей персональных компьютеров.

Пишет, Светлана Юдина.

Взгляд журналиста на профессию :

Программист – одна из самых востребованных и высокооплачиваемых профессий в России. Даже не самый продвинутый специалист может найти работу в соответствии со своим уровнем знаний, а затем постепенно учиться и набираться опыта.


Хорошим стартом карьеры может стать присоединение к группе программистов при разработке какого-либо проекта. Крупные проекты часто привлекают внимание западных компаний, которые «перекупают» российских программистов. К примеру, когда-то группа наших молодых ученых разрабатывала процессор «Эльбрус» для Минобороны, а в итоге их всех перекупила корпорация Intel, и теперь наши ученые и программисты работают за рубежом, а сам проект «Эльбрус» потихоньку закрылся. Проблема «утечки мозгов» в этой профессии – одна из самых острых.

Спрос на рынке труда на программистов высокий, но и конкуренция соответствующая. Найти интересную и высокооплачиваемую работу вам удастся только в том случае, если вы знаете свое дело «на отлично».

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

Советую всем прочитать, ниже статьи интервью с Александром Архиповым, программистом, администратором сайта Programmersforum.ru

Программист: гений поневоле

Программист – одна из самых востребованных и высокооплачиваемых профессий в России. Даже не самый продвинутый специалист может найти работу в соответствии со своим уровнем знаний, а затем постепенно учиться и набираться опыта. ..

Интервью у: Alat . Читаем здесь: http://pblog.ru/?p=88

 
Обработка исключений в Delphi
Здравствуйте уважаемые «дельфисты» и им сочувствующие. Сегодня я вам расскажу про обработку исключений в программах на Delphi. Техника, описанная мной позволяет почти полностью контролировать выполнение сомнительного кода, который может и не сработать в самый критичный момент. Данная статья в первую очередь ориентирована на «чайников».

Начнём сначала (это низкоуровневая часть этой статьи, кому не интересно тот может не читать). В Windows исключения обрабатываются с помощью техники SEH. Расшифровывается она так – Structured Exception Handling, т.е. структурированная обработка исключений. Суть её вот в чём. У каждого процесса в некоторой области памяти (обычно она указывается сегментным регистром fs) находится связанный список, в каждом элементе которого содержатся по два указателя: один указывает на обработчик исключения, второй указывает на следующий элемент. Таким образом, получается цепочка указателей обработчики (первый элемент находится по адресу [fs]:0). При возникновении исключения (например: деление на ноль, обращение к несуществующей (невыделенной) памяти, неправильная операция над числами, неверное преобразование и т.д.) вызывается первый обработчик, он может обработать исключение и вернуть результат EXCEPTION_CONTINUE_EXECUTION т.е. «всё нормально», или если оно не может его обработать или оно предназначено для обработки других исключений оно возвращает результат EXCEPTION_CONTINUE_SEARCH, то управление будет передано следующему обработчику и так до тех пор, пока исключение не будет обработано (если уж никто не смог обработать исключение, то я думаю, последний обработчик додумается завершить приложение).

Теперь ближе к делу. В Delphi техника SEН реализуется с помощью блока try…except/finally…end. Общий формат этих блоков такой:

try
<код>
except
<что будет выполнено если будет исключение>
end
либо:
try
<код>
finally
<что будет выполнено в любом случае>
end

В втором случае видно что в цепочку обработчиков SEH будет добавлен пустой обработчик, а в первом случае в цепочку обработчиков будет добавлен указатель на блок except…end. В блоке, который следует после except можно обработать исключение, можно просто вывести сообщение об ошибке, а можно и ничего не делать. При возникновении ошибки в основном блоке управление сразу же передаётся коду, который находится в блоке except. Код, который находится после строки, которая вызвала исключение не выполнится. Если основной код слишком большой, и могут возникать различные ошибки, то можно с помощью блока on…do узнать какое именно исключение произошло. Например:

try
d:=56/0;
x:=round(d);
except
on EInvalidOp do
ShowMessage(’деление на ноль’)
else
ShowMessage(’другая ошибка’);
end;
Можно получить детальную информацию об исключении, объявив в блоке on…do переменную требуемого класса и потом её использовать, например:
try
d:=56/0;
x:=round(d);
except
on Excp : EInvalidOp do
ShowMessage(’ошибка под названием - ‘+Excp.Message)
else
ShowMessage(’Другая ошибка’);
end;
Можно сгенерировать исключение с помощью оператора raise, например:
type
MyClass = class (Exception);
………
begin
//more code
raise MyClass.Create(’любой текст’);

или можно воспользоваться уже существующим классом, например

raise EZeroDivide.Create(’текст’);

Информацию о классах исключений можно получить, набрав в справке Delphi «VCL exception classes» (там конечно не все, но для начала хватит).

Следует подметить, что ошибки можно обработать только в стандартных функциях Delphi, ошибки в API функциях нельзя отловить с помощью блоков try. У API функций есть свой способ узнать об ошибке или генерировать ошибки – это API функции Set/GetLastError.

Вот наверно и всё. Это был rpy3uH , специально для “ Клуб программистов ”.

 
Немного юмора
Беседуют два программиста:
- Чем отличается программист от обычного человека?
- Программист может ответить на вопрос, в котором уже заключен ответ.
- Это как?
- Ну, например, ответь на вопрос: сколько будет 2+2=4?
- TRUE.

* * *

Решил хакеp стать поваpом.
Пошел блины печь.
Пеpвый блин у него, как водится, комом вышел.
Hу а втоpой - экзешником!

* * *

- Я тут с такой девушкой познакомился... Отпад! 90-60-90!!!
- Круто... Откуда у нее шестизначная аська?!!

* * *

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

* * *

Первый день. Запустили все программы и отформатировали все дискеты.
Второй день. Запустили все утилиты и отформатировали все винчестеры.
Третий день. Запустили все, что грузится, и отформатировали все, что крутится.
Четвертый день. Приехал админ, и тут такое началось...

* * *

В кабинете шефа компютерщик подготавливает комп к форматированию. В это время в кабинет влетает секретарша:
- Шеф спрашивает, не встречалась ли вам папка <Мусор>?
Компютерщик с ужасом вспоминает, что минуту тому назад снес эту папку.
Немедленно запускаются всевозможные <анерейзы>, и через полчаса он гордо докладывает вешедшему в кабинет шефу:
- Шеф, я нашел ее!
- Кого?
- Ту папку, <Мусор>. Вы полчаса назад звонили...
- Ах да! Я хотел сказать - сотри ее нафиг...

* * *

У программера спрашивают:
- Сколько детей?
- Два сына.
- По сколько лет?
После паузы:
- Один на компе играет, а второй еще нет.

* * *

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


* * *

- Что такое "поддержка пользователей"?
- А это если у пользователя вся инфа накрылась медным тазом, то ты подходишь, кладешь руку на плечо и говоришь: "Как я вас понимаю!"

* * *

- В мой компьютер попал вирус.
- Ну и что ты сделал?
- Прививку.
- Куда?
- Под мышку...

* * *

У кнопки "Reset" есть один недостаток:
маленькая очень,
кулаком попасть сложно.

* * *

Компьютерная примета:
если все ваши знакомые сидят в аське, то на улице идет дождь.

* * *

Дали соседнему отделу стажера.
Слышу, сотрудники переговариваются:
- Рожа все время опухшая... Глаза красные... На работе спит...
- Пьет, что ли?
- Может, квейкер просто...

* * *

Закон программиста:
Если тебе что-то не нравится, то не спеши это исправлять, если не помнишь, для чего ты это сделал.

* * *

- Мужики, а фильм Doom по какой части сняли?
- По третьей.
- Спасибо. А пароли от первой - подойдут?

 
Подписчикам рассылки

Ко мне на e-mail часто приходят разные письма от подписчиков с вопросами. Я всегда рад вашим письмам. присылайте вопросы, пожелания, замечания. Адрес для писем ведущему рассылки admin@welikeit.ru .

 

Клуб | Лабораторные работы | Справочники | Книги | Статьи | Архив рассылки | Форум | Основы Delphi | Блог