Вход | Регистрация
    1  2  3  4  5  6  7  8   
Работа :: Работа

Переход на Golang, кто рассматривал?

Переход на Golang, кто рассматривал?
Я
   Shur1cIT
 
21.10.21 - 09:54
4. Перехожу на PHP/Python33% (5)
5. Не-не-не, я на 1С посижу пока27% (4)
6. Да лень мне куда-то идти13% (2)
7. Другое13% (2)
2. Перехожу на C++7% (1)
3. Перехожу на Java7% (1)
1. Перехожу на Goland 0% (0)
Всего мнений: 15

поковырял go, посмотрел видио, посмотрел HH.
язык не сложный (как мне показалось) по сравнению с Java, C#, особенно для 1с ника так как ООП там в примитивном виде, входит вполне неплохо, единственное предметку надо изучить с которой он работает.
Денег нормально предлагают + рынок международный.
Кто что об этом думает? Рассматривали подобные варианты? Какие подводные камни нашли?
   garantNo4x
 
601 - 26.10.21 - 11:26
(592) читал пару отзывов тех кто на великах ездит на дальние дистанции .. они прям его в обязательном порядке принимают ..
не то что бы удивился, но там обычно лошадиные нагрузки и видимо реально помогает мобилизовать силы ..
   tciban
 
602 - 26.10.21 - 11:27
(600) Отнюдь. И в больничке я свое отлежал и в санатории (совершенно бесплатно, спасибо государству) реабилитацию прошел. И предписанные препараты принимал и принимаю - правда из предписанных оставили только одно - лористу.
   Галахад
 
603 - 26.10.21 - 11:27
Я не понял, мельдоний помогает освоить Го?
   ivanovpetr79
 
604 - 26.10.21 - 11:31
(603) эндуробол очень хорошо влияет на усвоение багов Eclipse RCP
   tciban
 
605 - 26.10.21 - 11:32
(603) Мельдоний улучшает кровоснабжение мозга, а лучше работающий мозг лучше усваивает Го :)
Но я пока питон изучаю. Вместе с сыном - он активно в олимпиадах участвует, это уже дает немалый выхлоп типа учебы на месяц в Сириусе в Сочи совершенно бесплатно и тп

4. Перехожу на PHP/Python
   080808Ник
 
606 - 26.10.21 - 11:33
(596) ноофен
   080808Ник
 
607 - 26.10.21 - 11:35
(604) еще занятия кросфитом или боксом тоже улучшают усвоение языков программирования
   OldCondom
 
608 - 26.10.21 - 11:39
(602) то есть тебя вылечили, а помог, оказывается, мельдоний) Какое все такие невежство вокруг. И ведь потом советуют другим.
   tciban
 
609 - 26.10.21 - 11:39
(607) И боксом? Ну ладно, в 1С это может помочь убедить клиента, но в Го?
   tciban
 
610 - 26.10.21 - 11:42
(608) Вывод не верный. Сначала меня вылечили. А сейчас мельдоний сильно помогает мне оставаться в форме, не смотря на возраст и прочие трудности. А вылечили меня в 2013-2014 году, Мельдоний стал известен широким кругам много позже.
   Галахад
 
611 - 26.10.21 - 11:43
Хм. А вискарик случайно не помогает освоить Го?
   080808Ник
 
612 - 26.10.21 - 11:47
(609) бокс развивает мышление) как оказалось. Занятие нестандартной деятельностью увеличивает нейропластичность, которая ухудшается со временем
   080808Ник
 
613 - 26.10.21 - 11:48
(611) если Го - это девушка азиатка, то помогает освоить и Го и ее сестер и подружек)
   tciban
 
614 - 26.10.21 - 11:48
(612) А какие еще есть занятия для улучшения нейропластичности? А то не люблю я живых людей кулаками бить. Дзюдо занимался.
   Garykom
 
615 - 26.10.21 - 11:49
(612) и как много боксеров-программистов вы знаете?
   OldCondom
 
616 - 26.10.21 - 11:50
(615) Один есть
   080808Ник
 
617 - 26.10.21 - 11:54
(614) а там не надо бить) там до битья полгода будут гонять) а занятия, любые, которые заставляют делать непривычные действия.
   OldCondom
 
618 - 26.10.21 - 11:54
(610) помогать он станет, когда это будет доказано. А так бы лучше морковку ели.
   080808Ник
 
619 - 26.10.21 - 11:57
(615) а не нужно становится боксером. нужно заниматься боксом) это две большие разницы))) я вот занимаюсь боксом второй год, а боксером не стал) тут главное то, что ты нагружаете мозг другой деятельностью. Научно не доказано, но я ощутил разницу от занятий. Как будто мозг кто перегружает.
   Garikk
 
620 - 26.10.21 - 11:57
(610) тут на самом деле всё очень индивидуально, вон Караченцева после ДТП так не вылечили и Моисеева после инсульта судя по всему тоже

тут всё зависит не от того какие таблетки пить (хотя это тоже важно) а скорее от того насколько организм может восстанавливаться и насколько обширны повреждения
   Garykom
 
621 - 26.10.21 - 12:06
(619) на самом деле ты просто отдыхаешь, занимаясь другим видом деятельности
с тем же успехом можно автомашину ремонтировать самому или грядки копать или в путешествие отправиться и никаких компов и ЯП чтобы и рядом не было
   бешельмеконсалтинг
 
622 - 26.10.21 - 12:11
(597) мб мне рано, но во время совмещения работы и учебы, в тот сложный год, я тоже пил милдронат )))
   бешельмеконсалтинг
 
623 - 26.10.21 - 12:12
(606) ноофен - он же фенибут, не? действующее вещество одно и тоже. и реально помогает?
   бешельмеконсалтинг
 
624 - 26.10.21 - 12:15
(613) ага, узкоглазый транс с сюрпризом ))) мой знакомый сбежал, когда он/она ему предложила "бом-бом" сделать в Тайланде
   Garykom
 
625 - 26.10.21 - 12:17
Есть подозрение что некоторые 1Сники воспринимают переход из 1С в другие ЯП (особенно если микросервисы) как смену пола ))
   Garykom
 
626 - 26.10.21 - 12:18
(625)+ или ориентации
   080808Ник
 
627 - 26.10.21 - 12:18
(621) ну хз. меня ничто так не перегружало как бокс. оказалось слишком интеллектуальное занятие для тупого 1сника) я долго не успевал перестраиваться - шагаешь с левой бьешь с правой, назад одноименными руками и это нужно быстро перестраиваться, делая разные упражнения в определенно порядке. Грядки я копал с детства, можно сказать я вырос на грядках летом и в библиотеке зимой, но так умственно я напрягался только на боксе)))
   080808Ник
 
628 - 26.10.21 - 12:23
(623) ну мне помогает. существенную разницу вижу до и после.
(625) потому что мозг теряет нейропластичность. От однотипных задач мозг ржавеет. Даже в франче, когда у тебя десятки клиентов  с разными задачами, их можно обобщить к нескольким задачам. А когда предлагают что то новое, тут нужно напрягаться. а напрягаться нечем - все ржавое внутри) И вот сидит такой ведущий программист 1с обмазанный сертификатами и регалиями, а ему предлагают почувствовать себя опять тупым на уровне начинающего. Так что это хуже чем сменить пол)
   Garykom
 
629 - 26.10.21 - 12:27
(627) попробуй научиться ездить на уницикле ))
или танцевать сложные танцы
   Garykom
 
630 - 26.10.21 - 12:30
 
 
   080808Ник
 
631 - 26.10.21 - 12:40
(629) вот на танцы думаю начать ходить с женой)
   ДенисЧ
 
632 - 26.10.21 - 12:43
(631) с чьей?
   080808Ник
 
633 - 26.10.21 - 12:57
(632) со своей, естественно
   vi0
 
634 - 26.10.21 - 14:15
(630) по таким трассам и на обычном велике мозг освежится и отдохнет как надо
   vi0
 
635 - 26.10.21 - 14:17
(548) ну как навязанные, просто еще абстракции, по сути фреймворк
   бешельмеконсалтинг
 
636 - 26.10.21 - 17:36
(635) это типичный ORM
   Garykom
 
637 - 26.10.21 - 17:50
(636) в Golang вернулись по сути к истокам и ORM почти не юзают
там основное это sql в структуры и наоборот
   бешельмеконсалтинг
 
638 - 26.10.21 - 18:19
(637) у нас юзался Gorm, но мы его выпилили и перешли на plain sql, ну с хелпером для генерации SQL.
как в 1С почти, только добавился полноценный CRUD, ушли быстрые элементы отборов, приходится велосипедить.
   Пакман
 
639 - 26.10.21 - 18:19
(612) Удары по голове тоже развивают нейропластичность. Может от этого ты почувствовал перезагрузку?
   Garykom
 
640 - 26.10.21 - 18:22
(638) мне больше всего зашел sqlx
   vi0
 
641 - 26.10.21 - 18:38
(636) одно другому не противоречит
   080808Ник
 
642 - 26.10.21 - 19:36
раз такая пьянка, расскажите знатоки иностранных языков. хочу себе сделать личный проект по управлению компом с телефона - использовать телефон как мышь и клавиатуру. В дальнейшем с возможностью получения изображения с экрана пк. Комп на винде, телефон на андроиде.  Я так понимаю клиент писать на джава/котлин под андроид. а что юзать под сервер на винду? и вообще в какую сторону копать?)
   Garykom
 
643 - 26.10.21 - 19:57
(642) уже давно есть
   080808Ник
 
644 - 26.10.21 - 20:22
(643) я в курсе) и даже пользуюсь такой) но вопрос был не в этом)
   rphosts
 
645 - 27.10.21 - 02:24
(310) да восстанавливается много... вызовы апи конечно придется по справочникам/хэлпам искать долгое время но ничего нерешаемого при желании
   MadHead
 
646 - 27.10.21 - 05:08
(642) задачка довольно задротная. Под винду лучше взять язык от MS, C# или VC++ возможно VB прокатит.
   MadHead
 
647 - 27.10.21 - 05:14
(0) Go хороший вариант для перехода с 1с. Синтаксис простой, но после языков с большим количеством синтаксического сахара, го кажется очень скучным и рутинным, а если не использовать либы, то еще и сильно медленным в плане разработки. Возможно станет веселее после того как выкатят дженерики.

7. Другое
   бешельмеконсалтинг
 
648 - 27.10.21 - 09:45
вместо дженериков есть кодогенерация. да и можно ещё указывать interface{}, потом делать кастинг типа, это похоже на java.lang.Object приводишь к нужному типу. дженерики вроде уже подтвердили кстати.
   pechkin
 
649 - 27.10.21 - 09:56
А как вообще типизированные коллекции без женериков возможны?
   ДенисЧ
 
650 - 27.10.21 - 10:03
(649)
CMyType coll = new CMyType[]

))
   ДенисЧ
 
651 - 27.10.21 - 10:03
Точнее
CMyType *coll = new CMyType[]
   sikuda
 
652 - 27.10.21 - 10:09
(649) Динамически проверять в момент выполнения. На 1С это
ТаблицаПериодов = Новый ТаблицаЗначений;
ТаблицаПериодов.Колонки.Добавить("НомерСтроки",    Новый ОписаниеТипов("Число"));

и да буду белой вороной по выбору

2. Перехожу на C++
   MadHead
 
653 - 27.10.21 - 10:12
(648) Как по мне - это костыли и слабая безопасность, многие на джаву ругались за null поинтеры в рантайме, так GO из за слабой системы типизации нет функциональных преобразования типа map, filter для коллекций, нет option и довольно часто проблемы лезут в рантайме когда в других языках такое отловил бы компилятор. Лично у меня - это только расстраивает )
(649) В Go дженерики не добавили, но для Map что-то прикрутили похожее на дженерики, а set как коллекцию вообще забыли добавить )
   MadHead
 
654 - 27.10.21 - 10:15
(652) Это замедяет работу приложения и усложняет выявление проблем. Так как проблема выявленная в рантайме, всегда "дороже" чем проблема выявленная на этапе компиляции
   sikuda
 
655 - 27.10.21 - 10:23
(654) Согласен. Более того скорость работы с типизированными коллекциями характерно больше
https://blog.sikuda.ru/?p=3188
   sikuda
 
656 - 27.10.21 - 10:26
(655) Сори. наоборот. Со слабой типизацией Python3 27 сек, PHP7 19 сек
Java с оптимизацией меньше секунды
   MadHead
 
657 - 27.10.21 - 10:33
(656) Вроде бы все верно было написано. Про ПХП мало чего знаю, а питон тупит так как он интепретируемый. Если в питоне использовать pandas или numpy то будет на много быстрее. JVM для перф тестов лучше указывать флаг -server тогда JVM раньше начнет компилировать, а не интерпритировать куски кода.
   Garykom
 
658 - 27.10.21 - 10:36
(657) >pandas или numpy

это которые типа как ВК для 1С на C++ да?
   MadHead
 
659 - 27.10.21 - 10:44
(658) Имел в виду математические пайтон либы, можно сказать класика в плане анализа данных. Написаны скорее всего на C/C++ может их кто-то в ВК для 1с завернул, но я не в курсе
   Garykom
 
660 - 27.10.21 - 10:51
(659) это и подразумевал что они на C++ написаны и поэтому шустрые
а вот java, C# и тем более Go/Rust они таких извратов не требуют, можно нормально писать и шустро будет
 
 
   Garykom
 
661 - 27.10.21 - 10:51
(660)+ хрень этот Питон короче
   Krendel
 
662 - 27.10.21 - 10:55
Шурик уже сел учить что-нибудь?
   бешельмеконсалтинг
 
663 - 27.10.21 - 11:08
(647) мне наоборот после java зашел golang, типизация не такая сильная как в java. вы наверное не копались в проектах, которые писали любители лямбд.
Map<String, Dickie> dickies =
futures
.stream()
.map(f -> {
    try {
        return f.get();
    } catch (Exception e) {
        logger.error("Error executing this shiet", e);
        return (List<Proxy>) (List) Lists.newArrayList();
    }
    })
.flatMap(List::stream)
.collect(Collectors.toMap(p -> p.getUrl(), p -> p, (p1, p2) -> p1));
и так весь проект.
идеология Go - если что-то можно сделать одним способом, то пусть программеры так и делают, а не придумывают велосипеды.
в джавке 1 тред - 1 или 2 мб, в голанге - 8 кб.
в джавке надо хикари фигачить, а в голанге в database/sql уже есть готовый пул.
в джавке блокирующая очередь, а в голанге - каналы.
да, классов нету, нету эксепшнов, нету интерфейсов.
но имхо, иногда для задачи они и не нужны.
kiss, yagni и вот это вот все.
вы наверное не сидели на проектах одного из банков, в котором есть пейсатели огромных классов с 4 extends и 3 implements (видел краем глаза у перейдуна знакомого).
   MadHead
 
664 - 27.10.21 - 11:10
(658) Какая разница что там под капотом. Для задач аналитики и ДС - это крутой инструмент. Под остальные вышеперечисленные языки прийдется больше писать руками и в итоге код и работать будет не сильно быстрее и на разработку уйдет очень много времени.
ЗЫ. Меня подтипывает когда го пытаются придвинуть к расту ) Это как палка копалка и наточенная лопата с алмазным напылением )
   бешельмеконсалтинг
 
665 - 27.10.21 - 11:10
(653) в джавке тоже бывают null pointer exception, как и в голанге, который также можно в рантайме словить, если не везде натыкать Optional.of
   бешельмеконсалтинг
 
666 - 27.10.21 - 11:11
(653) сет - map[interface{}]bool, как в 1С прямо :)
дженерики уже одобрены и появятся в мажорном обновлении, но это неточно.
   Garykom
 
667 - 27.10.21 - 11:12
(663) эээ зачем эксепшены если есть проверки на err ?

если некто написал кривую падучую прогу то гнать его ссаными тряпками
если проверить все входные параметры то никаких эксепшенов нафик не надо

лично я против добавления в Go и эксепшенов и дженериков если често
   Garykom
 
668 - 27.10.21 - 11:14
(667)+ когда добавят будет сильно хуже с качеством кода проектов и либ
уже сейчас некоторые слишком злоупотребляют утизацией
   бешельмеконсалтинг
 
669 - 27.10.21 - 11:15
(667) дык я о том же. экспепшны в го есть - это паники, недавно 1 ган.. нехороший человек воткнул панику в сторонней либе, пришлось кусок логики к себе перетаскивать, а то им видите ли некогда.
   Garikk
 
670 - 27.10.21 - 11:40
(667) то в одном месте все ратуют за то что 'наконец писанины ненужной стало меньше', то на каждый чих надо писать портянки if err=
   MadHead
 
671 - 27.10.21 - 11:40
(663) Каждому свое. Если говорить о JVM языках, то мой выбор Scala. По этому подобный кусок кода глазу приятнее циклов и пересоздания коллекций, но на скале он бы выглядил на много лакончинее.
Было бы что-то в духе

futures.map(Try(Await.result(f, Duration.Inf)))
   Garikk
 
672 - 27.10.21 - 11:43
(670) +я еще молчу про то что надо через все цепочки вызовов err эти протягивать
вот например есть метод который получает данные с сайта, и оброботчик 400 и 500 ошибок...и ты блин внутри вызываешь еще десяток ф-ций...и из каждой должен внучную возвращать err до самой первой или писать обработчики...километры обвязки хз зачем, вместо того чтобы сказать raise Error500 если чтото критичное
   Garikk
 
673 - 27.10.21 - 11:43
и самый первый try его обработает...а не десяток вложенных
   MadHead
 
674 - 27.10.21 - 11:44
(670) + согласен, что бы не проверять err после каждого вызова. Меня это дико бесит в го
   MadHead
 
675 - 27.10.21 - 11:46
И гошную ошибку на много проще провтыкать и получить неожиданное поведение в рантайма я за то что бы в джаве не было обязательных для проверки исключений как это сделали в скале
   Garikk
 
676 - 27.10.21 - 11:48
(675) мне чтото подсказывает что можно отключить в компиляторе проверку обязательных исключений...но это не есть хорошо в плане философии явы
   Garykom
 
677 - 27.10.21 - 11:49
(674) тебе кто мешает написать func для проверки на ошибки?
   Garykom
 
678 - 27.10.21 - 11:50
(677)+ это явно лучше чем трайкачить оборачивая все вызовы и один хрен как то обрабатывать ошибки
   бешельмеконсалтинг
 
679 - 27.10.21 - 11:55
(671) на скале приятнее выглядит. согласен
(672) а в джавке не надо throws над методами писать?
кидайте панику, тот же raise 500, а потом ее в recover.
если уж очень хочется.
(675) вы почему-то забываете о unchecked exceptions. те же профуканные err.
и go не даст вам неполучить error если она есть в сигнатуре метода.
если уж коллега явно написал
res, _ := makeSomeShit(), где makeSomeShit (int, error).
то понятно кому git blame делать.
(678) в go есть opentrace и тот же ягерь для отслеживания всяких каскадных ошибок.
тут надо норм инфраструктуру пилить, особенно если у вас микросервисы и вот это вот все.
   Garikk
 
680 - 27.10.21 - 12:07
(679) <кидайте панику, тот же raise 500, а потом ее в recover.
если уж очень хочется. >
а это хороший стиль в го паникой таким образом пользоваться?
   бешельмеконсалтинг
 
681 - 27.10.21 - 12:09
(680) нет, нехороший.
но что void blablabla() throws millionsOfExceptions над каждым методом в цепочке, что if err != nil
все равно многабукаф писать, поэтому не вижу разницы.
   Garikk
 
682 - 27.10.21 - 12:10
(681)  throws millionsOfExceptions -- это ты в сигнатуре пишешь

а в if err внутри кода
   Garikk
 
683 - 27.10.21 - 12:10
забавно читать бизнеслогику когда у тебя каддая вторая строчка if err
   бешельмеконсалтинг
 
684 - 27.10.21 - 12:14
(681) то есть кучи exceptions в сигнатуре вас не пугают?
и вы видимо в методах прокидываете exception до JVM, а не ловите их.
ясно, понятно.
(683) я тоже так могу:
забавно читать бизнеслогику когда у тебя каддая вторая строчка try {} catch {} finally
   MadHead
 
685 - 27.10.21 - 12:18
(678)(684) смысл эксепшенов, что и можно хоть в одном месте все ловить и стектрейс всеравно точно укажет на место возникновения ошибки
(680) Самому можно бросать панику, но все либы в любом случае 20-30% текста уделить строкам if err != nil {return err} Экспешн, что тоже самое только такая строка как бы написана не явно.
   Garikk
 
686 - 27.10.21 - 12:21
(684) <то есть кучи exceptions в сигнатуре вас не пугают?>
1) они не мешают
2) лишнее упоминание исключения в сигнатуре - не лишнее, это еще камень в сторону го от меня - неявная типизация интерфейсов.... interface kettle() { void turn_on() } interface nuclear_bomb() { void turn_on() }

перепутал присвоение ф-ции к интерфейсу - сами виноват, ГЛАЗАМИ СЛЕДИТЬ НАДО
   бешельмеконсалтинг
 
687 - 27.10.21 - 12:22
(685) хз, мне норм. я не вижу разницы между throws в каждой сигнатуре метода (еще и при наличии runtime exceptions, которые unchecked) и error в сигнатуре функции.
ошибки надо обрабатывать, в любом языке. что в 1С, что в Java, что в Golang.
не помню где это было написано, но типа овердофига логики в программах - это как раз логика обработки всевозможных ошибок.
   Garikk
 
688 - 27.10.21 - 12:22
(686)  + а в яве такого не получится
   бешельмеконсалтинг
 
689 - 27.10.21 - 12:29
(686) кто ж вас заставляет такие интерфейсы писать?
и вообще
type turnable interface {
turnOn()
}
а далее
type kettle interface {
turnable
}
зачем такое делать? интерфейс описывает действие, а объект его реализует вроде как. тут в проектировании ошибка.
такую же дичь можно и в джавке написать:

interface Turnable{
void turnOn();
}

public class Kettle implements Turnable {}
public class NuclearBomb implements Turnable {}
   бешельмеконсалтинг
 
690 - 27.10.21 - 12:32
(686) зачем ГЛАЗАМИ СЛЕДИТЬ, если можно натравить линтер?
https://golangci-lint.run/
   Garykom
 
691 - 27.10.21 - 12:34
(684) >забавно читать бизнеслогику когда у тебя каддая вторая строчка try {} catch {} finally

"дык что там упадет если вся прока в try ... catch"©
   Garikk
 
692 - 27.10.21 - 12:35
(690) как ты линтером определишь что правильный метод вызываешь через интерфейс kettle?
   Garikk
 
693 - 27.10.21 - 12:37
типа

IKettle kettle;
IBomb bomb;

kettle = new bomb()

kettle.turn_on()
   Garikk
 
694 - 27.10.21 - 12:37
в яве так не получится, в го...дазапросто..чё лишние слова писать...интерфесы то одинаковые!
   бешельмеконсалтинг
 
695 - 27.10.21 - 12:39
(692) не определишь, но зачем делать такие интерфейсы?
тут выбирать уже надо, чем вам хочется - свободы, но больше ответственности.
либо меньше ответственности, но куча проверок на этапе компиляции.
я бы выбирал от задачи, наличия фреймворков под задачу и удобства ЯП.
(694) если бы коллега писал такие интерфейсы, его бы запороли на код ревью :)
   Garikk
 
696 - 27.10.21 - 12:46
(695) < но зачем делать такие интерфейсы? >
нельзя полагаться на добросовестность программистов, фраза 'а вы так не делайте' не работает
в крупном проекте полюбому ктото в код нас*ет, даже ты сам если аврал
<если бы коллега писал такие интерфейсы, его бы запороли на код ревью :)>
ревью разные бывают, бывает что их вообще не бывает

вот у меня ща на проекте уже 4й человек меняется коллега...я в одну рожу код пишу..сам себе ревью
   бешельмеконсалтинг
 
697 - 27.10.21 - 12:57
(696) кто-то должен ревьювить, это уже организаторские проблемы, то что вы описываете.
в условиях аврала, нехватки ресурсов и в джава код и в 1С код можно нагадить.
   Garikk
 
698 - 27.10.21 - 13:07
(697) < кто-то должен ревьювить, это уже организаторские проблемы,>
организационные проблемы - не оправдание тому чтобы в код гадить
а если компилятор и линтер помогают этого не делать - это плюс
а вот когда компилятор не помогает (злобный взгляд в сторону питона) то это плохо
   Garikk
 
699 - 27.10.21 - 13:07
когда проект очень большой, в одну голову сложно всё запомнить где у тебя kettle и где bomb
   080808Ник
 
700 - 27.10.21 - 13:08
(687) "не помню где это было написано, но типа овердофига логики в программах - это как раз логика обработки всевозможных ошибок."- вот кстати да. бесит в 1с это то что приходится постоянно прописывать кучу обходов мелких ошибок. Вот прикольно придумали галочку "Проверять заполнение". Если бы сделали еще такой себе объект с конструктором проверки на ошибки. клацнул, галочки проставил, поля посвязывал  и все. а не писать кучу говно кода
  1  2  3  4  5  6  7  8   

Список тем форума
 
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
В секцию Работа можно добавлять сообщения только после регистрации на форуме.
Если вы уже зарегистрированы, вам нужно войти на форум.