Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Разное > Книги / Литература
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 21.02.2014, 06:51
big_djo big_djo вне форума
Прохожий
 
Регистрация: 21.02.2014
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Я Написал Книжку по Делфи, хотел бы узнать Ваше мнение и отзывы

Здравствуете! Недавно я выпустил книжку для начинающих программистов "Курс практического программирования в Delphi. Объектно-ориентированное программирование", был бы рад узнать Ваши мнения и отзывы)
Санников_КурсDelphi_Ознакомительный_вариант.rar

http://www.ozon.ru/context/detail/id/20070015/
http://www.labirint.ru/books/379859/
http://www.labirint-bookstore.ru/id/379859/

Последний раз редактировалось big_djo, 22.02.2014 в 10:54.
Ответить с цитированием
  #2  
Старый 21.02.2014, 07:43
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Дайте хотя бы главу из книги бесплатно. Или содержание.

А то не видно ж ничего
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #3  
Старый 21.02.2014, 09:07
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,906
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

1000 рублей за 188 страниц о D7... Я бы никогда не купил. Чувак, ИМХО, тупо хочет поднять продажи, видимо не я один не покупаю.
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
  #4  
Старый 21.02.2014, 09:20
big_djo big_djo вне форума
Прохожий
 
Регистрация: 21.02.2014
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Цитата:
Сообщение от Aristarh Dark
1000 рублей за 188 страниц о D7... Я бы никогда не купил. Чувак, ИМХО, тупо хочет поднять продажи, видимо не я один не покупаю.

Я не устанавливаю цены и не имею к этому никакого отношения. Это всё устанавливает издательство и интернет магазины. Я скину позже небольшую часть, для примерной оценки. Считаю , что сделал хороший практикум по Делфи из 15 практических работ, оттестировал его многократно на студентах.

Теперь необходимо Ваше Мнение и отзывы

Цитата:
Сообщение от M.A.D.M.A.N.
Дайте хотя бы главу из книги бесплатно. Или содержание.
Ок, в ближайшее время

Привожу ознакомительный вариант книжки. Приведены: Практическая работа №1 -полностью, остальные несколько работ частично.Санников_КурсDelphi_Ознакомительный_вариант.rar

Цитата:
Сообщение от Aristarh Dark
1000 рублей за 188 страниц о D7... Я бы никогда не купил. Чувак, ИМХО, тупо хочет поднять продажи, видимо не я один не покупаю.
На озоне и в издательстве около 500 рублей всего стоит, это интернет-магазины накручивают

Последний раз редактировалось M.A.D.M.A.N., 22.02.2014 в 11:56.
Ответить с цитированием
  #5  
Старый 22.02.2014, 20:31
big_djo big_djo вне форума
Прохожий
 
Регистрация: 21.02.2014
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

обложка к книжке
[img]Обложка1.jpg[/img]

Последний раз редактировалось big_djo, 22.02.2014 в 20:41.
Ответить с цитированием
  #6  
Старый 22.02.2014, 22:16
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

В своё время я накупил по глупости достаточно много книг на эту тему, но толку от них никакого. Всё что нужно было, нашёл во встроенной справке и исходном коде поставляемом с Дельфи.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #7  
Старый 25.02.2014, 13:23
hfiblsx hfiblsx вне форума
Прохожий
 
Регистрация: 25.02.2014
Сообщения: 1
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

ещё бы работа с сетью.А так пойдёт...ну цена то конечно ОГОГО
Ответить с цитированием
  #8  
Старый 25.02.2014, 14:26
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Цитата:
Сообщение от hfiblsx
ещё бы работа с сетью.А так пойдёт...ну цена то конечно ОГОГО
Судя по обложке, тут только ООП рассматривается, сети - это другая тема.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #9  
Старый 25.02.2014, 23:42
AlexSku AlexSku вне форума
Специалист
 
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
По умолчанию

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

2. Примеры довольно странные. форма, которая меняет цвет и размер, когда её передвигают. Почему вы рисуете на форме, а не на панели (или на PainiBox)? Ведь Delphi не для того, чтобы создавать приколы. Есть стандартные задачи: текстовый/графический редакторы, обработка файлов, базы данных, связь по сети, вычисления и графики, алгоритмы (сортировка и проч.). Для начала надо показать, как правильно делать интерфейс (меню, поля информации, кнопки управления) и какими средствами решать типовые задачи.

3. Следите, пожалуйста, за русским языком. Напр., в фразе "недолжно быть" "не" пишется отдельно. Следите за логикой. Напр.: "компонент называется (является) объектом". Термин "объект" вы пояснили, но забыли пояснить термин "компонент". "Можно отлавливать нежелательные события": если они нежелательные, то зачем их отлавливать? Просто не ставить для них обработчики. Timer.Enable=false вы считаете недоступным, но не надо переводить буквально, просто таймер останавливается (перестают вызываться обработчики OnTimer). И т.д.

4. Анг. язык. Почему вы использовали 'drug', что означает "лекарство, наркотик"? "Перетащить и бросить" это Drag&Drop. (При этом вы не рассказываете об автоматической схеме Drag&Drop - опять же, логика хромает).

5. Стиль программ. Нужен шрифт постоянной ширины (Courier New). Зачем писать русские слова английскими буквами (Proekt)? Тогда почему вы пишете Button, а не Knopka? Почему переменные a,b,c маленькие, а D - большая? (ShowMessage и halt - иногда лень нажимать Shift?). В MessageDlg вы засунули довольно длинные сообщения. Было бы проще оформить их в виде String, тогда вызов фунции был бы покрасивее.

6. Насколько я понимаю, книга для новичков. Но вы довольно глубоко копнули, допустим, dll, messages, API. Вот вы привели код TApplication.CreateForm. Неужели новичок его поймёт? Я сам не стал разбираться.

7. Ещё странная логика. Почему, если нет корней в квадратном уравнении, то надо аварийно закрывать программу (halt)? Почему не выдать сообщение "Корней нет, т.к. дискриминант отрицательный"?
Почему для сообщения вы используете то ShowMessage, то MessageDlg?

8. Визуальные компоненты на палитре не называются Edit1, Button1, называйте их TButton или Button.

9. То, что выбрана Delphi7 это хорошо (т.к. если использовать XE5, то лучше переходить на FireMonkey), но используйте реалии сегодняшнего дня: во-первых, CLX вы не сможете использовать (как я только что указал, для кроссплатформенных систем используется FireMonkey), во-вторых, старые hlp-файлы справки новые Windows по умолчанию не поддерживают, так что надо было бы указать как решать эту проблему.

Общий совет такой: если вы приводите свой вариант, то намекните, что существуют и другие решения. Напр. if CheckBox.Checked=T then Timer.Enable:= T else Timer.Enable:= F можно было упростить:
Timer.Enable:= CheckBox.Checked.
Почему вы пишете if L= true then? Это вы у Сишников насмотрелись? Можно писать покороче: if L then (L - логическое выражение).

Есть ещё куча замечаний, но рука устала писать.
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо AlexSku за это полезное сообщение:
Aristarh Dark (26.02.2014), Freeman (25.02.2014)
  #10  
Старый 25.02.2014, 23:50
Аватар для Freeman
Freeman Freeman вне форума
Местный
 
Регистрация: 05.10.2012
Адрес: Санкт-Петербург
Сообщения: 576
Версия Delphi: 6
Репутация: выкл
По умолчанию

Большое спасибо AlexSku за развернутый комментарий. С книгой и ее автором все понятно, не буду тратить время.
__________________
Не стоит путать форумы с богадельнями. © Bargest
Ответить с цитированием
Этот пользователь сказал Спасибо Freeman за это полезное сообщение:
Aristarh Dark (26.02.2014)
  #11  
Старый 26.02.2014, 00:05
big_djo big_djo вне форума
Прохожий
 
Регистрация: 21.02.2014
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Согласен ляпы есть.


Цитата:
2. Примеры довольно странные. форма, которая меняет цвет и размер, когда её передвигают. Почему вы рисуете на форме, а не на панели (или на PainiBox)? Ведь Delphi не для того, чтобы создавать приколы. Есть стандартные задачи: текстовый/графический редакторы, обработка файлов, базы данных, связь по сети, вычисления и графики, алгоритмы (сортировка и проч.). Для начала надо показать, как правильно делать интерфейс (меню, поля информации, кнопки управления) и какими средствами решать типовые задачи.

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




Цитата:
3. Следите, пожалуйста, за русским языком. Напр., в фразе "недолжно быть" "не" пишется отдельно. Следите за логикой. Напр.: "компонент называется (является) объектом". Термин "объект" вы пояснили, но забыли пояснить термин "компонент". "Можно отлавливать нежелательные события": если они нежелательные, то зачем их отлавливать? Просто не ставить для них обработчики. Timer.Enable=false вы считаете недоступным, но не надо переводить буквально, просто таймер останавливается (перестают вызываться обработчики OnTimer). И т.д.

За проверку орфографии отвечают также и в издательстве перед печатью, наверное пропустили.
С компонентом да , не дал определение.


Цитата:
4. Анг. язык. Почему вы использовали 'drug', что означает "лекарство, наркотик"? "Перетащить и бросить" это Drag&Drop. (При этом вы не рассказываете об автоматической схеме Drag&Drop - опять же, логика хромает).

не обратил внимание на это, надо будет исправить. Возможно да, надо было бы привести автоматической схеме Drag&Drop.


Цитата:
6. Насколько я понимаю, книга для новичков. Но вы довольно глубоко копнули, допустим, dll, messages, API. Вот вы привели код TApplication.CreateForm. Неужели новичок его поймёт? Я сам не стал разбираться.
Думаю на конкретных простых примерах новички смогут разобраться. И я это уже испробовал на многих студентах.


Цитата:
7. Ещё странная логика. Почему, если нет корней в квадратном уравнении, то надо аварийно закрывать программу (halt)? Почему не выдать сообщение "Корней нет, т.к. дискриминант отрицательный"?
Почему для сообщения вы используете то ShowMessage, то MessageDlg?

Уже увидел это когда отправил в печать. halt лишний. Насчет фразы "Дискриминант отрицательный" думаю это излишне, достаточно просто "Корней нет".

Цитата:
8. Визуальные компоненты на палитре не называются Edit1, Button1, называйте их TButton или Button.
Это сделано для упрощения, но замечание правильное.

9. То, что выбрана Delphi7 это хорошо (т.к. если использовать XE5, то лучше переходить на FireMonkey), но используйте реалии сегодняшнего дня: во-первых, CLX вы не сможете использовать (как я только что указал, для кроссплатформенных систем используется FireMonkey), во-вторых, старые hlp-файлы справки новые Windows по умолчанию не поддерживают, так что надо было бы указать как решать эту проблему.

Цитата:
Общий совет такой: если вы приводите свой вариант, то намекните, что существуют и другие решения. Напр. if CheckBox.Checked=T then Timer.Enable:= T else Timer.Enable:= F можно было упростить:
Timer.Enable:= CheckBox.Checked.
Почему вы пишете if L= true then? Это вы у Сишников насмотрелись? Можно писать покороче: if L then (L - логическое выражение).
Это тоже уже пофиксил.

Цитата:
Есть ещё куча замечаний, но рука устала писать.

Спасибо за замечания, я собираюсь сделать новую верисю книжки, тщательно пересмотрю код, и учту все замечания.
Ответить с цитированием
  #12  
Старый 26.02.2014, 00:47
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Цитата:
Сообщение от AlexSku
...Почему вы пишете if L= true then? Это вы у Сишников насмотрелись? Можно писать покороче: if L then (L - логическое выражение)...
А я вот здесь поддерживаю автора, явное указание состояния флажка более наглядно, для новичков ведь примеры приводятся, а неофит просто обязан быдлокодить, не пройдя сквозь понимание того как надо и как не надо полноценным кодером ему стать будет трудно. Наберётся опыта и "= true" само собой отвалится

По книге. Извините, такую не куплю - она мне просто не нужна, посмотрел мельком представленный материал - нового там ни чего не заметил, в смысле ну чтоб прям "Ах! А мужики-то и не знают!", да во всех книгах одно и тоже в принципе обмусоливается, что поделаешь, на этом поприще сложно влить чего-то новенького. Подобных книг в доме за 12 лет со дня выхода D7 накопилась уже целая полка, и ставить туда ещё одну смысла нету. Вот если бы была книга про ХЕ5, как и чем бодяжить сборки под яблоко или дрона, такое вот могло бы в принципе сподвигнуть к покупке и книги, и описываемой в ней СР. Думаю за этим будущее. Прошу прощения, имхо
Ответить с цитированием
  #13  
Старый 26.02.2014, 02:56
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Цитата:
Сообщение от Alegun
А я вот здесь поддерживаю автора...
И зря, нужно сразу приучать новичков к правильному стилю программирования.
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #14  
Старый 15.03.2014, 17:24
Аватар для Freeman
Freeman Freeman вне форума
Местный
 
Регистрация: 05.10.2012
Адрес: Санкт-Петербург
Сообщения: 576
Версия Delphi: 6
Репутация: выкл
По умолчанию

Цитата:
Сообщение от Alegun
А я вот здесь поддерживаю автора, явное указание состояния флажка более наглядно, для новичков ведь примеры приводятся, а неофит просто обязан быдлокодить
На твоем месте я бы поостерегся давать такие советы. Представь, что в вашей автосигналке (или как ее там?) придет какой-то умник и начнет учить направо и налево: мол, сделай тяп-ляп, лишь бы работало, ты же новичок, нехай провода изо всех дыр торчат... Понравилось ли бы тебе потом работать с таким "специалистом"?

Цитата:
Сообщение от AlexSku
1) Немного о среде программирования (IDE). Можно написать, что её можно настраивать под себя.
Слово "нужно" тут написано с ошибками. Далее по тексту тоже.
__________________
Не стоит путать форумы с богадельнями. © Bargest
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 13:03.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter