Сравнение 1с и visual studio
(16) просто те кто сидит на мелкосовтовском си похожи на ярых автомобилистов - но тех можно ещё понять им никто не даст сесть за штурвал сверхзвукового истребителя - а программисту кто не даёт использовать нормальный софт.
(19) просто мелкософтовский софт самый лучший, это как мерседес против твоего самодельного фанерного реактивного истребителя
(26) Я уже много лет в IT, и могу сказать что мелкософт полное Гэ, но ничего лучше пока к сожалению никто не создал.
(29) ты реально просто ничего и не пробовал - играя на их софте - открой для себя свободное ПО и ужаснись сколько ты потерял за эти годы.
(30), ну не скажи. я за свободное ПО, но есть же те кто использует мелкософт и будут использовать. так что тут палка с двух концов.
(33) сам ты троль - пишешь на шарпе - хоть не хвастайся об этом при всех - нормальные люди не поймут тебя.
(35) нормальный язык, как раз для мелкософта. есть конечно недостатки, но где их нету. каждый же занимает свою нишу.
(35) угу с фразочкой типа - требуется "установленный фреймворк версией не ниже. который скачайте вот здесь . " после этого трудно назвать эту поделку программой.
(39) а кто мешает сразу добавить в сборку этот же билд фреймворка и предложить обновить. главное желание.
Чо пристал к челу - даже если написал "хелло ворд" уже молодец.
но молодежь надо направлять в правильное русло .
(53) а слушай, это же форум 1с программистов по сути, давай уже по теме: "Вы пишете на 1С? - Мне вас жаль . "
(53) ты нативные языки со скриптовыми не путай .
входной язык 1С - язык приложения - ничего общего с темой сабжа не имеет
я всего лишь пытаюсь донести до автора сабжа что нет особой разницы между УГ ультимейт и профешн
(52) есть несколько больших коммерческих проектов (уже сданных заказчику)
(59) А нефиг автора сбивать с толку. Все на мелкософте сидят, зачем обсирать то чем пользуешься? Тем более что очень качественные вещи, много труда и денег в них вложено.
а автора с толку трудно сбить - он в IT с 1988 года.
в qt wxwidgets и пр. тоже много вложено.
только их изучать надо.
с полпинка не взлетит
(61) не все сидят - а те кто всё ещё сидит на нём - мягко говоря не правы - поскольку тормозят развитие IT и способствуют размножение умственно отсталой молодёжи воспитанной на глючной винде, дибильных играх (которые хуже наркоты) и тормозных скриптах - даже термин появился у якобы "хакеров" - "пропиши" - типа пропиши себе код .
Уберите винду и 90% хакеров и вирусов пропадет.
Оценить 2 комментария
sivabur: Для бухгалтеров, программистов, интеграторов. Если взять разработку, то денег там платят не меньше.
Nokia7650: возможно подробности работы на 1с не знаю.(знаю только что на нею много програмистов плюються)
выбирай 1С. там же код на русском. русский вроде знаешь. а шарп еще учить нужно,только время потеряешь
Можно пойти 1С стажером. Но когда криво встанет обновление в какой нибудь конторе в миллионными оборотами, то от ребят в кожанках на черных джипах придется год другой ныкаться.
Это вы все аутсорс компаниям скажите. Когда она свой косяк сваливает на сотрудника, который ставил эту правочку. :D
10 лет 1с-кой занимаюсь в качестве разработчика.
если бы у меня был выбор как у топикстартера не выбрал бы 1с.
сейчас вот смотрю куда бы отсюда соскочить на что-то более распространенное за пределами страны.
Расскажите поподробнее какие минусы за 10 лет в 1С вы для себя нашли? Тоже стою перед выбором лезть в 1С или нет? И очень интересует вопрос по заработку, сколько видел вакансий всегда достаточно большой уровень зарплат, а те кто уходит на фриланс по 1С говорят тоже хорошо живется.
Medusa: минус для меня лично в том, что за пределами России, Украины это почти никому не нужно. Захочешь куда-то переехать- и кем работать? По ЗП да, относительно остальных уровень нормальный. Фриланс-это как у всех. Нужны клиенты. Причем необходимо знание прикладной(предметной) области. Без этого голый 1с прог никому не нужен.
Говорят же что в Германии 1С продвигают. А по фрилансу возможно больше зарабатывать чем просто работая с клиентами в городе? Я так понимаю предметная область это бухгалтерия, зарплата и т.д. + знание все основных конфигураций? А стоит ли вообще брать клиента на сопровождение по 1С я имею ввиду консультации и обновления или лучше работать чисто по заказам на внедрение и написание дополнительных модулей для автоматизации бизнеса(я так понимаю здесь оплата выше).
Medusa: Как продвигают в Германии точно не знаю, не могу прокомментить. Фрилансом не занимался, в основном во франчах работаю. Да, предметная область как вы и написали.
Мне кажется что лучше-тут однозначно не скажешь, смотря какие клиенты, какие задачи, и как платят:)
rasswet: ну твое нежелание заниматься с 1С связано с тем, что ты хочешь переехать) если убрать эту проблему, то 1С довольно хорошая штука. ведь так? И не так трудна как многие языки программирования, так как на русском, и зарплаты хорошие. А что тебе помогло в работе? Я вот учу 1С, практикуюсь, и заодно читаю разные статьи на тему Бухгалтерии.. Думаю, что мне это пригодится.
Альберт: да, можно и так сказать. вцелом. Помогло в работе книжка Радченко, курсы 1с, курсы Гилев и Насипов (их продвинутый курс покроет 90% знаний о платформе), форум Миста. этого достаточно, имхо
rasswet: вот я по книге Радченко занимаюсь. на 200 странице пока.. сначала ее пройду, потом видеоуроки буду смотреть. У них платные курсы? И какая у тебя зарплата если не секрет?
Альберт: ЗП у всех разная. открываешь HH и смотришь что там. в среднем по больнице.
вот по Радченко и занимайся. Да у них платные. Поищи еще Павел Чистов. У него были и бесплатные.
rasswet: То есть получается если не переезд то вас в принципе все устраивает в 1С? А вообще сейчас в какую сторону смотрите web или что?
Medusa: да, в целом устраивает. в Разные стороны смотрю, постоянно не хватает времени, чтобы уже плотно взяться.
rasswet: А расскажите еще тогда про плюсы 1С, что она вам дала для развития? Появились ли связи с предпринимателями и т.д. Мне вот просто надоело сидеть перед компом по 8 часов с минимум общения и я подумал что 1С может дать хорошие связи и общение и вообще хоть какое то движение. Скажите это правда или я в розовых очках. Очень благодарен за ответы.)
Medusa: мало того что сижу на работе по 8 часов, так еще и после работы занимаюсь тем же по приходу домой. Но это далеко не у всех так наверное.
почитайте форум миста. самое большое скопление 1-ников там. там можете зарегиться и задать свой вопрос-увидите реакцию :) поначалу это шокирует-потом привыкаешь.
связи появились с двумя предпринимаетелями которым я написал с нуля по базе, для их учета. Маленькие конфигурации ничего лишнего. Что касается общения, то всё индивидуально очень. Бухи в основной массе тугодогоняющие не желающие вообще думать.Они не в состоянии грамотно сформулировать не то что задачу, но даже свои "хотелки". Поэтому со временем общение с ними может начать раздражать. Но опять таки-это индивидуально.
есть еще форум инфостарт. там можете свои вопросы позадавать. Это будет более эфективно спрашивать тех, кто 1-ник, если вас эта тема интересует. На тостере думаю их не больше 1го процента, а на тех форумах, которые я посоветовал 99%.
Некоторое время назад (осенью 2016), при разработке очередной версии технологической платформы 1С:Предприятие внутри команды разработки встал вопрос о поддержке нового стандарта C++14 в нашем коде. Переход на новый стандарт, как мы предполагали, позволил бы нам писать многие вещи элегантней, проще и надежней, упрощал поддержку и сопровождение кода. И в переводе вроде бы нет ничего экстраординарного, если бы не масштабы кодовой базы и специфические особенности нашего кода.
Для тех кто не знает, 1С:Предприятие – это среда для быстрой разработки кросс-платформенных бизнес-приложений и runtime для их выполнения в разных ОС и СУБД. В общих чертах в состав продукта входят:
- 10 миллионов строк С++ кода,
- 14 тысяч файлов,
- 60 тысяч классов,
- полмиллиона методов.
Дисклеймер
Все написанное ниже о медленной/быстрой работе, (не)большом потреблении памяти реализациями стандартных классов в различных библиотеках означает одно: это справедливо ДЛЯ НАС. Вполне возможно, для ваших задач стандартные реализации подойдут наилучшим образом. Мы же отталкивались от своих задач: брали типичные для наших клиентов данные, прогоняли на них типичные сценарии, смотрели на быстродействие, объем потребляемой памяти и т.п., и анализировали – устраивают ли нас и наших клиентов такие результаты или нет. И поступали в зависимости от.
Что у нас было
Изначально мы писали код платформы 1С:Предприятие 8 на Microsoft Visual Studio. Проект начался в начале 2000-х и у нас была версия только под Windows. Естественно, с тех пор код активно развивался, многие механизмы были полностью переписаны. Но код писался по стандарту 1998 года, и, например, правые угловые скобки у нас были разделены пробелами, чтобы успешно проходила компиляция, вот так:
В 2006 году, с выходом версии платформы 8.1, мы начали поддерживать Linux и перешли на стороннюю стандартную библиотеку STLPort. Одной из причин перехода была работа с широкими строками. В нашем коде мы повсеместно используем std::wstring, основанный на типе wchar_t. Его размер в Windows 2 байта, а в Linux по умолчанию 4 байта. Это приводило к несовместимости наших бинарных протоколов между клиентом и сервером, а также различных персистентных данных. Опциями gcc можно указать, чтобы размер wchar_t при компиляции был тоже 2 байта, но тогда об использовании стандартной библиотеки от компилятора можно позабыть, т.к. она использует glibc, а та в свою очередь скомпилирована под 4-байтный wchar_t. Другими причинами были более качественная реализация стандартных классов, поддержка хеш-таблиц и даже эмуляция семантики перемещения внутри контейнеров, которой мы активно пользовались. И еще одной причиной, как говорится last but not least, была производительность строк. У нас был свой класс для строк, т.к. у нас в силу специфики нашего софта строковые операции используются очень широко и для нас это критично.
Наша строка основана на идеях оптимизации строк, высказанных ещё в начале 2000-х Андреем Александреску. Позднее, когда Александреску работал в Facebook, с его подачи в движке Facebook была использована строка, работающая на схожих принципах (см. библиотеку folly).
В нашей строке использовались две основные технологии оптимизации:
- Для коротких значений используется внутренний буфер в самом объекте строки (не требующий дополнительной аллокации памяти).
- Для всех остальных используется механика Copy On Write. Значение строки хранится в одном месте, при присвоении/модификации используется счетчик ссылок.
Третий путь
При переходе на стандарт C++14 мы рассматривали такие варианты:
- Поднимать модифицированный нами STLPort на стандарт C++14. Опция очень непростая, т.к. поддержка STLPort была прекращена в 2010 году, и поднимать весь его код нам пришлось бы самостоятельно.
- Переход на другую реализацию STL, совместимую с C++14. Крайне желательно, чтобы эта реализация была под Windows и Linux.
- Использовать при компиляции под каждую ОС встроенную в соответствующий компилятор библиотеку.
Мы некоторое время думали над вторым вариантом; в качестве кандидата рассматривали libc++, но он на тот момент не работал под Windows. Чтобы портировать libc++ на Windows, пришлось бы проделать немало работы — например, писать самим всё, что связано с потоками, синхронизацией потоков и атомарностью, поскольку в libc++ в этих областях использовалось POSIX API.
И мы выбрали третий путь.
Переход
Итак, нам предстояло заменить использование STLPort на библиотеки соответствующих компиляторов (Visual Studio 2015 для Windows, gcc 7 для Linux, clang 8 для macOS).
К счастью, наш код писался в основном по гайдлайнам и не использовал всяческие хитрые трюки, так что миграция на новые библиотеки протекала сравнительно гладко, с помощью скриптов, заменяющих в исходных файлах имена типов, классов, неймспейсов и инклюдов. Миграция затронула 10 000 исходных файлов (из 14 000). wchar_t заменялся на char16_t; мы решили отказаться от использования wchar_t, т.к. char16_t на всех ОС занимает 2 байта и не портит совместимость кода между Windows и Linux.
Не обошлось без небольших приключений. Например, в STLPort итератор можно было неявно скастить к указателю на элемент, и в некоторых местах нашего кода это использовалось. В новых библиотеках так делать было уже нельзя, и эти места приходилось анализировать и переписывать вручную.
Итак, миграция кода закончена, код компилируется для всех ОС. Настало время тестов.
Тесты после перехода показали проседание производительности (местами до 20-30%) и увеличение потребляемой памяти (до 10-15%) по сравнению со старой версией кода. Это было, в частности, связано с неоптимальной работой стандартных строк. Поэтому строку нам опять пришлось использовать свою, слегка доработанную.
Также вскрылась интересная особенность реализации контейнеров во встраиваемых библиотеках: пустые (без элементов) std::map и std::set из встроенных библиотек аллоцируют память. А у нас в силу особенностей реализации в некоторых местах кода создается довольно много пустых контейнеров этого типа. Аллоцируют стандартные контейнеры памяти немного, для одного корневого элемента, но для нас это оказалось критичным – на ряде сценариев у нас ощутимо упала производительность и выросло потребление памяти (по сравнению с STLPort). Поэтому мы заменили в нашем коде эти два типа контейнеров из встроенных библиотек на их реализацию от Boost, где эти контейнеры не имели такой особенности, и это решило проблему с замедлением и повышенным потреблением памяти.
Как часто бывает после масштабных изменений в больших проектах, первая итерация исходников работала не без проблем, и тут нам сильно пригодились, в частности, поддержка отладочных итераторов в Windows-реализации. Шаг за шагом мы двигались вперед, и к весне 2017 (версия 8.3.11 1С:Предприятия) миграция была завершена.
Итоги
Переход на стандарт С++14 занял у нас около 6 месяцев. БОльшую часть времени над проектом работал один (но очень высококвалифицированный) разработчик, а на финальной стадии подключились представители команд, ответственных за конкретные области — UI, кластер серверов, средства разработки и администрирования и т.д.
Переход сильно упростил нам работу по миграции на новейшие версии стандарта. Так, версия 1С:Предприятие 8.3.14 (в разработке, релиз запланирован на начало следующего года) уже переведена на стандарт С++17.
После миграции у разработчиков появилось больше возможностей. Если раньше у нас была своя доработанная версия STL и один неймспейс std, то теперь у нас в неймспейсе std находятся стандартные классы из встроенных библиотек компилятора, в неймспейсе stdx – наши, оптимизированные для наших задач строки и контейнеры, в boost – свежая версия boost. И разработчик использует те классы, которые оптимально подходят для решения его задач.
Помогает в разработке также и «родная» реализация конструкторов перемещения (move constructors) для ряда классов. Если у класса есть конструктор перемещения и этот класс помещается в контейнер, то STL оптимизирует копирование элементов внутри контейнера (например, когда контейнер расширяется и надо изменить capacity и реаллоцировать память).
Ложка дегтя
Самое, пожалуй, неприятное (но не критичное) последствие миграции — мы столкнулись с увеличением объема obj-файлов, и полный результат билда со всеми промежуточными файлами стал занимать по 60 – 70 Гб. Такое поведение связано с особенностями современных стандартных библиотек, ставших менее критично относиться к объему генерируемых служебных файлов. Это не влияет на работу скомпилированного приложения, но доставляет ряд неудобств в разработке, в частности, увеличивает время компиляции. Повышаются также требования к свободному месту на диске на билдовых серверах и на машинах разработчиков. Наши разработчики параллельно работают над несколькими версиями платформы, и сотни гигабайт промежуточных файлов иногда создают трудности в работе. Проблема неприятная, но не критичная, ее решение мы пока отложили. Как один из вариантов ее решения рассматриваем технику unity build (ее, в частности, использует Google при разработке браузера Chrome).
Понятно, что от чистой теории до реализации всех особенностей 1С очень далеко. Приведенный в статье пример обладает следующими ограничениями. В примере реализована поддержка нескольких типов объектов и нескольких часто встречающихся свойств. Атрибуты объектов могут быть одного типа, хотя 1С допускает составной тип. Трансляция кода в код 1С не поддерживается. Реализованы англоязычные наименования.
XML-выгрузка конфигурации 1С
В результате XML-определение язык Русский примет такой вид Русский.cs
Ссылки на объекты определяются через типы вида CatalogRef<>. Например, так
Табличная часть определяется как TabularSection
События модуля объекта и модуля менеджера реализуются как override-методы. Могут выглядеть так:
Компилирование проекта CSPROJ
В Roslyn есть встроенные классы, отвечающие за обработку sln-решений и csproj-проектов Visual Studio. Проблема состоит в том, что они ссылаются на отдельные сборки, поставляемые в составе MSBuild Tools. Последняя версия Roslyn ссылается на сборки MSBuild Tools 2014, которые отдельно скачать не получится. Инсталляция сейчас входит в состав дистрибутива Visual Studio 14 CTP.
Если потребуется реализовать больше свойств проекта, то их можно подсмотреть в проекте Roslyn
Получение XML-файлов совместимых с 1С: Предприятие
При генерации XML-файлов работа большей частью ведется с типами, их членами и атрибутами. Оказалось, что объекты Roslyn CSharpCompilation очень ограничены в средствах. Через них нельзя выйти на типы System.Type, нельзя получить список атрибутов с учетом наследования. Поэтому для полноценного анализа лучше создать сборку средствами Roslyn и загрузить ее для Reflection-анализа:
Странно, что не удалось загрузить сборку как ReflectionOnlyLoad из-за ошибки «missing api-ms-win-core-l1-2-0.dll». Ошибка возникала при попытке прочитать входящие в состав сборки типы. Тем не менее, сборка нормально загружается и работает через обычный вызов Load.
Генерация XML-файлов сводится к перебору всех типов, наследованных от Configuration и основных объектов, к перебору свойств объектов и атрибутов.
XML строится средствами XML LINQ, например, так:
Удалось выяснить, что 1С лояльно относится к отсутствию многих тегов, заменяя их значениями по умолчанию. Поэтому пустые значения в XML-файлах можно пропустить, тем самым сократив занимаемый размер на диске. Размер экономии может быть весьма значительным – до 40 процентов. Использование же cs-файлов вместо XML дает еще большую экономию места – до 60%.
Выводы
Текущая XML-выгрузка от 1С неудобна для анализа, потому что все файлы собраны в единый каталог;
Я стала разбираться в Visual Studio, научилась писать SDI (простенькие в принципе) и диалоговые. |
В самом примитивном случае, минимальное SDI или диалоговое приложение - выбрать в мастере тип приложения, и нажать Build - Run.
Я и там программировал на С++, и тут программирую на С++ |
И сколько было коммерческой разработки "и там. и тут"?
Ну, если считать что 1С учить проще и быстрее, то вероятно и зарплата будет поначалу расти быстрей ( по крайней мере на начальном этапе ). Ну и востребованность 1С-ников по небольшим городам наверняка побольше будет.
И вообще, слышала, что 1С многие девелоперы презирают, как никакой почти язык программирования. |
Ага, а Виндовс - мастдай.
Только что это меняет?
Посмотрите сайты по поиску работы (job.ru и т. п.) - сначала ищете по ключевому слову "C++", смотрите: сколько предложений, где, какие зарплаты, потом - то же по "1C". Точностью этот метод не блещет, но кое-какие ориентиры даст. |
Как минимум надо бы еще делить на области применения C++ и по опыту работы. Должно дать более точные ориентиры. ( А то получается какая-то средняя температура по больнице )
Возможна еще сексуальная дискриминация: что блондинко знает 1С поверить несколько легче, чем что она знает С++. Насколько справедлив этот постулат - х. з., но он вполне может иметь место
И сколько было коммерческой разработки "и там. и тут"? |
Действительно. выучить, что ли, 1С и попробовать устроиться _тут_ по этой специальности
Для опыта можно попробовать вариант поучаствовать в каком-нибудь open source-ном проекте. |
Я думаю, С++ сложнее на несколько порядков (вы хорошо умеете уже работать с указателями? а с шаблонами?), кроме того там надо знать еще кучу всего (библиотеки-API-операционную систему-процессы-потоки и пр., и пр.) - кого-то это привлекает, кого-то - отпугивает. Программист на 1С может жить себе в рамках 1С и не заморачиваться. |
Вообще, да. 1С - это узкая специализация, точно. Т.е. есть вероятность, что если человек овладел в совершенстве С++ и всеми связанными с ним фичами, то он может в разных областях найти применение своим знаниям. А 1С - голимая бугалтерия.
Изучайте рынок труда. Особенно если не настроены переезжать в Америку (где об 1С вообще, наверное, никто не слышал?). Посмотрите сайты по поиску работы (job.ru и т. п.) - сначала ищете по ключевому слову "C++", смотрите: сколько предложений, где, какие зарплаты, потом - то же по "1C". Точностью этот метод не блещет, но кое-какие ориентиры даст. |
Спасибо за совет! Но в местные газеты чаще пестрят объявлениями о востребованности 1С-"людей". Не говорю программистов, т.к. еще непонятно чем они занимаются на 1С.
Муж начал не так давно работать в 1С. Считает, что у него гораздо больше перспектив в плане повышения зарплаты, т.к. там идет прямая зависимость зарплаты у них в фирме от кол-ва обслуживаемых фирм и предприятий. А туда, куда я хотела бы устроиться на С/С++ - там у меня будет полставки (т.к. доучиватья еще в универе надо. ), т.е. денег 100% будет меньше (муж работает не на пол стаки и учиться).
Ну, если считать что 1С учить проще и быстрее, то вероятно и зарплата будет поначалу расти быстрей ( по крайней мере на начальном этапе ). Ну и востребованность 1С-ников по небольшим городам наверняка побольше будет. |
В самом примитивном случае, минимальное SDI или диалоговое приложение - выбрать в мастере тип приложения, и нажать Build - Run. |
Спасибо большое за совет, не знала об open source.
Возможна еще сексуальная дискриминация: что блондинко знает 1С поверить несколько легче, чем что она знает С++. Насколько справедлив этот постулат - х. з., но он вполне может иметь место |
Ээээ. Что сказать по поводу приведенных аргументов?
1. "Аргумент в пользу 1С таков, что платят больше денег (по словам моего мужа.. больше и сразу)"
Для junior'а - как правило, да.
2. "Но однажды один преподаватель мне сказал, что Visual C++ рулит и я его послушала, как авторитета для меня. Я стала разбираться в Visual Studio, научилась писать SDI (простенькие в принципе) и диалоговые. И я думаю, что более профессионально программировать - это только на С/С++ можно."
Глупости. Клиенты платят (только ш-ш-ш! никому не говори! это страшная тайна!) за решение их конкретной бизнес-задачи, а не за "более профессиональное" программирование на C/C++ или "менее профессиональное" на Дельфи. Клиента, по большому счету, вообще не интересует, на каком языке написана программа и что там у нее "внутри", если программа написана в срок и решает его прикладную задачу, и при этом укладывается в заданные ограничения по быстродействию, памяти, месту на винчестере и т.п. Так что с этой точки зрения разницы, к примеру, между VB , Delphi, C++ или 1С нет никакой.
Вообще же, осмелюсь утверждать, что профессиональный программист - это человек, для которого программирование является основным источником дохода (зарабатывания денег). Все. Точка. Дальше - программируй ты хоть в машинных кодах или пробиванием дырочек на перфокартах. все остальные споры о "профессионализме" - оставим тинейджерам.
4. "Плюс к тому, у меня есть большое желание разобраться в Visual C++ и быть профессионалом в нем, но стоит ли?"
См. п.3 и решай самостоятельно.
5. "И вообще, слышала, что 1С многие девелоперы презирают, как никакой почти язык программирования."
Хмм. Язык, конечно, не дотягивает до C++ или Дельфи, среда довольно глючная (говорю о 1С 7.7, которую довелось пощупать руками; может быть, в 8.0 что-то изменилось?), отладчик - просто кошмар. Но профессионал - он потому и профессионал, что может программировать на любом языке. В том числе, и на 1С
6. "Подчеркиваю важность уровня зарплаты для меня в данный момент, т.к. копим на квартиру."
А вот это может стать ключевым моментом при выборе работы! И это нормально, не надо делать трагедии из того, что какое-то время придется заниматься нелюбимой работой за хорошие деньги. В конце концов, работа - это просто работа. Ничего личного, просто бизнес.
При выборе работы (или, в более широком смысле - сферы деятельности) просто отдай себе отчет в том, что, как ты совершенно верно понимаешь, 1С - это голимая бухгалтерия и учет, и перейти в другую область потом будет сложнее. Это довольно узкая ниша, из которой, возможно, потом будет уже не выбраться. Хотя, может быть, и не надо будет - если ты будешь досконально знать предметную область, ту же бухгалтерию, все эти дебеты-кредиты, и будешь специалистом в этой области - без работы не останешься, и на хлеб (а скорее, даже на хлеб с маслом и колбасой ) хватит.
Читайте также: