![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
Agiliter |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 3.12.2013 Репутация: нет Всего: нет |
Добрый день! Заканчиваю вуз в этом году и, соответственно, задумался о работе. У меня техническое образование, но специально программировать нас не учили. Было несколько курсов + программы, которые я писал для студентов других специальности. Программы пишу как минимум неплохо для консоли. Из оконных писал вполне рабочий калькулятор, пасьянс, змейку. По части алгоритмов проблем нет совсем. Однако мои знания отрывочны, и часто совершаю глупые, даже дилетантсткие ошибки в синтаксисе и в.. структуре кода что ли (на знаю как выразиться точнее). Прогить мне нравится. Даже более чем, однако основ не хватает. Есть вариант с одной хорошей фирмой. Через два месяца смогу пойти на собеседование. Требуется программист для создания клиент-серверных приложений. Будут брать без опыта работы, но требования высокие. Шанс упускать не хочу. Потому буду очень активно прокачиваться. В связи с этим хотел бы попросить помощи у гораздо более опытных людей.
1. Нужна литература по С\C++. Желательно одна-две книжки. Не слишком сложных, но чтобы и не разжовывалась элементарщина на тысячу страниц. -Нужно залатать пробелы. В сети куча материала, но и воды также через чур. 2. Нужна литература по Python. -Не изучал совсем, поэтому надо бы начать с азов, но чтобы не увязнуть в материале. 3. Подробную книгу по принципам ООП для C++. -В целом понимаю, почти все последние программы написаны с использованием классов. Однако, опять же мелочи какие-то.. 4. Собственно материал по созданию клиент-серверных приложений. С простыми примерами. Что, как и на чем писать. Требуется знание алгоритмов, каких-то базовых знаний, разбор внутренней кухни. -Тут вообще туго. 5. Так же нужны пара примеров с разбором. Какие-нибудь клиент-серверные приложения с комментариями в коде. Самые простые. Чат-сервер с клиентом, например. Буду рад подробным ответам. Если у кого есть еще какие-то мысли или советы, то прошу не медлить) P.S. Понимаю, что многие отнесутся с изрядной долей скептицизма по поводу моих идей и сроков выполнения. Но ведь это уже мои проблемы, не так ли?) |
|||
|
||||
smalcom |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 494 Регистрация: 16.10.2004 Где: Dnepr Репутация: нет Всего: 7 |
попробуйте интуит. обычно приводит мысли в порядок.
-------------------- What DA F...??? |
|||
|
||||
borisbn |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
http://forum.vingrad.ru/forum/topic-48036.html Литературу не подскажу (не читал), но здесь - http://docs.python.org/2/tutorial/ - достаточно подробно расписано. А этот ресурс - http://www.codecademy.com/tracks/python - мне просто оч.понравился
http://qt-project.org/doc/qt-4.8/network-fortuneserver.html И вообще посмотри в сторону Qt -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
||||
|
|||||
NoviceF |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 313 Регистрация: 13.3.2012 Где: Ростов-на-Дону Репутация: нет Всего: 2 |
По поводу клиент серверных приложений, для unix подобных систем классика А. Робачевский: Операционная система UNIX, глава 6, раздел Программный интерфейс TLI/XTI. Там есть примеры клиента и сервера.
Но дело в том, что когда коснёшься сетей, обязательным будет понимание темы потоков, т.к. без них там никуда. Так что рекомендую начать с потоков, но опять таки для юникс лайк http://citforum.ru/programming/unix/threads/. Вообще узнай, под какую платформу нужно писать, а то может под венду, там надо другие книжки читать ![]() Это сообщение отредактировал(а) NoviceF - 4.12.2013, 17:05 |
|||
|
||||
boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
а почему вы не порекомендовали посмотреть в сторону asio, ни, или, на худой конец - в сторону poco? Добавлено @ 00:00 Agiliter, вам же рекомендую посмотреть на сию реализацию RMI для с++: https://github.com/niXman/yarmi идея проста - проще некуда. Это сообщение отредактировал(а) boostcoder - 7.12.2013, 12:42 |
|||
|
||||
kolobok0 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 64 Регистрация: 24.12.2008 Репутация: нет Всего: 2 |
по сям (альма матер) Керниган и Ритчи "Язык программирования С" по ООА и ООП Гради Буч "Объектно Ориентированный Анализ и Проектирование с примерами приложений на С++" под форточки WinAPI Джефри Рихтер "WINDOWS для профессионалов" под практическое применение C++ Джэфф Элджер "С++" по правильному применению C++ STL и иже Бъерн Страуструп "Язык программирования С++" Кнут все 3 тома ![]() По поводу клиент-серверных дел. Посмотрите всевозможные умные книжки под Unix с уклоном в программировании. Смотрите более старые издания. Сейчас пишут с уклоном в пиар и получения денюшек. В своё время было не плохое подспорье под Novell Ральф Дэвис "Руководство по программированию в NetWare/386" вот типа таких книжек - содержат примеры сервачков и клиентов, под определённую ось. С использованием различных подходов и практик в этих делах. |
|||
|
||||
vinter |
|
||||||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
kolobok0, сам всё из этого списка прочитал? Особенно интересует Кнут.
Ничего полнее The C++ Programming Languange, от Страуструпа не существует. С помощью этой книги можно восполнить любые пробелы.
По принципам ООП лучше книги чем Object Oriented Woftware Construction от Bertrand Mayer вряд-ли можно отыскать. Но это большая книга и я бы лучше посмотрел в сторону паттернов проектирования: Design Patterns от Helm, Vlasides и прочих. Знания почерпнутые из этой книги на собеседовании точно помогут ![]()
Это целый класс объединённый общим названием. Это, по-сути, отношение актив-пассив, где пассивной стороной выступает сервер, а активной клиент. При этом взаимодействие между ними можно быть реализовано посредством каких угодно средств и вовсе не обязательно, что это будет реализовано посредством TCP/IP. Однако, я бы рекомендовал обратить своё внимание именно на стек TCP\IP и примеры работы с ним. Тем более, что отношения сервер-клиент очень хорошо представлены в простейшем HTTP сервере. Это сообщение отредактировал(а) vinter - 9.12.2013, 10:01 |
||||||
|
|||||||
borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
1) Велкам бэк )) 2) Потому что не знаю существенных преимуществ ни первой ни второй библиотек по сравнению с кутей. Просвети, плиз. Увижу преимущества - буду сам пользоваться и другим рекомендовать. Честно. 3) С каких пор мы на вы ? ![]() -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
В Qt networking реализован не лучшим образом, к примеру на windows не используется IO completion. Qt хорошая GUI библиотека, не более того. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |