Easyelectronics.ru

Электроника для всех
Текущее время: 31 мар 2020, 04:58

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/10pcs (Любой цвет!)
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 20 ] 
Автор Сообщение
 Заголовок сообщения: Android, Java и ООП
СообщениеДобавлено: 01 май 2017, 07:58 
Заглядывает иногда

Зарегистрирован: 08 ноя 2014, 02:44
Сообщения: 162
Откуда: Нерюнгри
Давно не заходил как в сообщество, так и на форум.
Show

Нашел на гитхабе нормальные открытые проекты и ... они оказались на Java. Смотрел как баран на новые ворота.

Кроме самого обычного Си, ничего оказывается не знаю.
И тут столкнулся с засадой - для понимания Java (впрочем, как и С++ и С#) нужно без "воды" понимать что такое ООП. Ладно, думаю, ну не дебил же - выучим. И нарвался на засаду номер два. В ООП принято давать подробные имена. Но имена все придумывают на английском.
То есть я тупил при чтении книжек и лекций всяких курсов, так как было много и спец. слов и просто слов, не имеющих отношения к языку Java.
А потом я обнаружил "волшебное" свойство Java. - В именах можно использовать русские символы. При этом всё и компилируется и исполняется без намека на ошибки.

В итоге сейчас делаю литературный перевод офф. учебника с сайта Java, с активным использованием в именах русского. Имена классов - по русски, имена методов - по русски, имена переменных - тоже по русски ...

Кто что думает об применении русского в написании программ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 01 май 2017, 08:11 
Старожил

Зарегистрирован: 18 июл 2016, 21:17
Сообщения: 746
Мне кажется, что это слишком нудно - постоянно переключать раскладку. В си вон даже в сложных именах функций не используются большие буквы.

Ингресс вот тоже нудная игра. Вместо того, чтобы за час на работу или с работы доехать, приходилось бродить 2-3 лишних часа по задворкам, зрение напрягать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 01 май 2017, 08:27 
Заглядывает иногда

Зарегистрирован: 08 ноя 2014, 02:44
Сообщения: 162
Откуда: Нерюнгри
bw429 писал(а):
Мне кажется, что это слишком нудно - постоянно переключать раскладку. В си вон даже в сложных именах функций не используются большие буквы.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 01 май 2017, 11:01 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2643
Откуда: Санкт-Петербург
Никогда и никому не показывайте то, что напереводили. На вас будут смотреть, как на дебила.
Не верите - спросите кого-нибудь из сишников или джавистов про 1С, только бумажный пакет не забудьте подать.

Вроде и ничего криминального в русских именах переменных и методов нет, но глаз режет дико (привычки-то у людей давно сложились), а когда задумываешься, почему оно так названо - понимаешь, что кто-то не смог запомнить несколько сотен слов...

На самый крайний случай - транслит. Но лучше воспользуйтесь случаем, поставьте себе какой-нибудь AnkiDroid и выписывайте незнакомые слова. Разом убьёте двух зайцев: и про жабу почитаете, и английский подтянете.

P.S.: Единственный случай, когда русские имена в коде не режут глаз - псевдокод. Но я советую и в нём пользоваться английским.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 01 май 2017, 11:49 
Заглядывает иногда

Зарегистрирован: 08 ноя 2014, 02:44
Сообщения: 162
Откуда: Нерюнгри
aamonster писал(а):
Никогда и никому не показывайте то, что напереводили.

То, что глаз режет - заметил, с этим не поспоришь.
Но суть предмета воспринимается легче, когда имена - это имена, а зарезервированные слова языка - другое.
Прекрасно знаю, что всякое применение русского в Си и С++ мягко говоря не приветствуется. Но сами авторы перевода книжек постоянно путаются, то переведут какое-либо имя, пока объясняется что и как, потом напишут имя метода без перевода, а потом опять в переводе ... Я понимаю, что лучше всего такое читать в оригинале.
А вот автор, который пишет на английском и использует слова своего языка и как текст программы, и как текст книги в обоих случаях имеет в виду одно и то же.
Получается, что для понимания учебников по Java сначала надо выучить английский. А сейчас получается так: автор учебника не предполагал, что текст его учебника будут коверкать и не переводить то, что должно быть понятно носителю языка как родное ...
Можно долго разлагольствовать, плохо или нет иметь в программе русские имена переменных. Я думаю, что скорее всего плохо.
Но на этапе обучения мне проще, когда объект "велосипед" и в тексте абзаца учебника будет велосипедом, и в тексте программы, которую я разбираю - тоже будет велосипедом, а не "bicycle"...
Это не значит, что потом надо переменные и классы писать с русскими именами. Язык программирования будет быстрее и проще понять ...
Ну это я так думаю.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 01 май 2017, 12:36 
Старожил

Зарегистрирован: 23 мар 2017, 14:45
Сообщения: 6626
Вы бы выложили, или дали ссылку, или цитату на какое-нибудь характерное место из вашего перевода. Вот мы бы заценили.
А то получается так - "не читал, но осуждаю"))))

По поводу того, что я прежде видел: программа из русских слов - это п_ц. Слова многозначны и экспрессивны. Режет глаз - это мягко сказано. Я пришел к выводу, что это наша удача - что текстовое разъяснение мы можем читать по-русски, а объекты, о которых речь - в оригинальном начертании - и не надо даже выделять их в тексте курсивом или цветом, - и так понятно, что латиница - значит имя из программы.

avtoneru писал(а):
Язык программирования будет быстрее и проще понять ...
Язык программирования будет быстрее и проще понять, если его понимает пишущий. А любые буквосочетания в программе - это термины. Они не должны иметь никакого обиходного смысла и вообще никакого значения кроме того единственного, которое они исполняют в программе.
Слова родного естественного языка не удовлетворяют такому условию.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 01 май 2017, 13:58 
Заглядывает иногда

Зарегистрирован: 08 ноя 2014, 02:44
Сообщения: 162
Откуда: Нерюнгри
Кот495 писал(а):
Вы бы выложили, или дали ссылку, или цитату на какое-нибудь характерное место из вашего перевода. Вот мы бы заценили.

Напишу - покажу. Могу привести корявые цитаты из "Философия Java". Книжка то хорошая. И когда сам переводишь оригинал, то понимаешь, что и написана "живо", и автор хороший, но по русски так не скажешь ... Проще сказать своё.
И даже спорить не хочу ,что прога из русских слов выглядит коряво. Это просто тяжело.

Я о другом. Возьмем простого американца. Или англичанина. Нет, все же американца, так как он короче. И заставим его учить язык программирования, в котором все слова будут русские. И служебные слова, и имена классов и методов - вообще всё. К примеру 1С. Ему будет тяжко. Сейчас они пишут на своем родном языке, и согласитесь что для а америкоса System.out.ptintln и без объяснений понятно из люльки, ему только понять надо почему это так написано и как это применять. Фактически язык программирования для англоязчной публики - просто текст на их родном языке, составленный по определенным правилам.

Я не жалуюсь, что не являюсь носителем английского языка. И проблем с простыми языками - в начале бейсик на спектруме в конце 90-х, а потом Си в микроконтроллерах - у меня нет. Всё понятно и доступно.

Но с ООП не получается въехать в то, что зовут "парадигма ООП". Вроде понятно и про классы, и про методы и про наследование ... но код чужой читать не получается. А хочется. Своё корявенько написать могу. А тут стойкое ощущение ,что злой дядька выкинул из языка гадские указатели и добавил вместо них ООП.
Поэтому и придумываю всякую муть, как та блондинка в рекламе "надо уметь отделить зерна от плевел" ...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 01 май 2017, 14:05 
Старожил
Аватара пользователя

Зарегистрирован: 28 дек 2011, 11:24
Сообщения: 4192
Откуда: г. Липецк
Ну как бы... Русский язык - это русский язык.
На куцем английском очень мало разночтений и пониманий в названии функций. Что написАл то и прочел.
А вот на великом и могучем?
Не рекомендовал бы этим заниматься, легче выучить английский, ИМХО.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 01 май 2017, 14:42 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2643
Откуда: Санкт-Петербург
avtoneru писал(а):
Я о другом. Возьмем простого американца. Или англичанина. Нет, все же американца, так как он короче. И заставим его учить язык программирования, в котором все слова будут русские. И служебные слова, и имена классов и методов - вообще всё. К примеру 1С. Ему будет тяжко. Сейчас они пишут на своем родном языке, и согласитесь что для а америкоса System.out.ptintln и без объяснений понятно из люльки, ему только понять надо почему это так написано и как это применять. Фактически язык программирования для англоязчной публики - просто текст на их родном языке, составленный по определенным правилам.

Я не американец, но технический английский читаю свободно. Так вот:
1. Программа на c/java/... вообще не воспринимается как "текст на английском языке", равно как программа на 1С - как текст на русском. Более-менее такое впечатление производит программа на Haskel, если считать за язык математическую нотацию.
2. Знание английского вообще не помогает понять "System.out.ptintln". Что за система? Какой такой out? Что за println? Знания, нужные, чтобы это понять - значительно обширнее значения трёх слов (проверка: попробуйте из этих значений вывести тип аргументов println).

Бонус: переведите на русский слова нц и кц ;-)

avtoneru писал(а):
Я не жалуюсь, что не являюсь носителем английского языка. И проблем с простыми языками - в начале бейсик на спектруме в конце 90-х, а потом Си в микроконтроллерах - у меня нет. Всё понятно и доступно.

Но с ООП не получается въехать в то, что зовут "парадигма ООП". Вроде понятно и про классы, и про методы и про наследование ... но код чужой читать не получается. А хочется. Своё корявенько написать могу. А тут стойкое ощущение ,что злой дядька выкинул из языка гадские указатели и добавил вместо них ООП.
Поэтому и придумываю всякую муть, как та блондинка в рекламе "надо уметь отделить зерна от плевел" ...

Норм. Проблема не в ООП (его довольно просто понять, там всего несколько основополагающих принципов... которые постоянно нарушают ;-)), а в том, что вы пытаетесь его "сожрать" одновременно с довольно-таки обширными библиотеками Java.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 01 май 2017, 17:14 
Старожил

Зарегистрирован: 23 мар 2017, 14:45
Сообщения: 6626
avtoneru писал(а):
И когда сам переводишь оригинал, то понимаешь, что и написана "живо", и автор хороший, но по русски так не скажешь ... Проще сказать своё.
- Воооот!.. - я как раз про это!
Сам ведь хелпы переводил)))) и начисто отказался от варианта перевода не только слово в слово, но даже близко к тексту. Переводить надо знание, а не текст. А для этого нужно "на зубок" знать предмет и мочь выразить это знание своими словами. Только тогда читающий легко и правильно поймет. Таких переводов, как и таких специалистов, очень мало сейчас.

avtoneru писал(а):
код чужой читать не получается.
Чужой код разобрать в 10 раз труднее, чем написать свой собственный. И дело тут не в языке, а в неповторимости авторского хода мысли. Бывает такое нестандартное мышление, что никак мысль не ухватишь...
Для этого в коде существуют комментарии. На родном языке. Вот это - реально на родном, естественном языке.
И в них, кстати, американцы нуждаются нисколько не меньше нас.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 31 май 2017, 08:32 
Только пришел

Зарегистрирован: 24 май 2017, 15:11
Сообщения: 21
Это точно. Чужой код, это же как темный лес или непроходимый лабиринт


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 31 май 2017, 12:33 
Старожил
Аватара пользователя

Зарегистрирован: 09 июн 2016, 13:49
Сообщения: 439
Откуда: Севастополь
Я один вспомнил про "русских хакеров" и постоянно мелькающем ролике со словом "Z.a.k.l.a.d.k.a" в дампе какой-то софтины ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 31 май 2017, 15:38 
Старожил

Зарегистрирован: 23 мар 2017, 14:45
Сообщения: 6626
Подделка! Возмутительный подлог! По-русски должно быть 3.a.k.l.a.d.k.a или ваще Çàêëàäêà.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 31 май 2017, 15:48 
Старожил

Зарегистрирован: 23 мар 2017, 14:45
Сообщения: 6626
avtoneru писал(а):
Кто что думает об применении русского в написании программ?
В теме рядом дали скриншот:
download/file.php?id=31753&mode=view
:))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 31 май 2017, 17:58 
Старожил

Зарегистрирован: 28 янв 2014, 13:12
Сообщения: 339
Я тоже пробовал ООП понять (хотел попасть на курсы разработчиков в одну серьезную ИТ фирму, а там куча вопросов в тестах именно по ООП). И тоже, так по ходу вроде принципы понятны, но чтобы его реально использовать... После контроллеров и сишки нужно перестраивать (ну или расширять) мышление.
И скорее всего, как и с СТМ32, у меня более менее пошло когда взялся за реальный проект, а не светодиодиками мигать и прочие хелоуворлды. Короче просто книжку читать и делать проги из нее это не то. Из книжки основы прочитать, а далее нужно какую нибудь задачу реальную поставить и решать ее. И очень хорошо когда есть кто то шарящий чтоб иногда проконсультироваться, в книжке не всегда все на поверхности :-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 31 май 2017, 19:46 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2643
Откуда: Санкт-Петербург
Когда наследование - примерно единственный способ приделать к объекту свою функциональность (кстати, кто помнит turbo vision?) - ООП понимается влёт :-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 31 май 2017, 20:47 
Старожил
Аватара пользователя

Зарегистрирован: 28 дек 2011, 11:24
Сообщения: 4192
Откуда: г. Липецк
aamonster писал(а):
... кто помнит turbo vision?) - ООП понимается влёт :-)

Как же вспоминаю, вздрагиваю, после нее Object Pascal это был просто глоток свежего воздуха.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 31 май 2017, 21:11 
Старожил
Аватара пользователя

Зарегистрирован: 03 сен 2010, 22:46
Сообщения: 5693
Откуда: Москва
anakost писал(а):
Как же вспоминаю, вздрагиваю, после нее Object Pascal это был просто глоток свежего воздуха.

Да, на редкость долбанутый фреймворк.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 01 июн 2017, 00:44 
Старожил

Зарегистрирован: 19 мар 2013, 19:37
Сообщения: 2643
Откуда: Санкт-Петербург
Да ладно, вы его не вкурили просто. Мне в институте тоже поначалу казался сложным, но когда разберёшься - всё становилось простым и удобным. И Дельфи, как логичное продолжение. После этой линейки win api и mfc вызывали тягостное недоумение, которое прошло только с выходом гопнета.

Или вас так напрягало, что нельзя просто лепить делегаты, а надо наследоваться? Ну так в дельфях для более-менее сложных случаев было то же самое...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Android, Java и ООП
СообщениеДобавлено: 01 июн 2017, 08:30 
Старожил
Аватара пользователя

Зарегистрирован: 28 дек 2011, 11:24
Сообщения: 4192
Откуда: г. Липецк
Возможно не разобрался, а детали (?), слишком уж давно было. Помню путался в модели наследования и создании новых обьектов. В Dephi наоборот все понятно стало сразу, TObject и производные.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 20 ] 


Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB