1C - Yaxshi va yomon. Golivarlarda nuqtalarning 1C atrofida joylashishi

1C - Yaxshi va yomon. Golivarlarda nuqtalarning 1C atrofida joylashishi

Do'stlar va hamkasblar, so'nggi paytlarda Habré haqida rivojlanish platformasi sifatida 1C-ga nisbatan nafratga oid maqolalar va uning himoyachilarining chiqishlari tez-tez bo'lib kelmoqda. Ushbu maqolalar bitta jiddiy muammoni aniqladi: ko'pincha 1C tanqidchilari uni "o'zlashtirmaslik", de-fakto osonlikcha hal qilinadigan muammolarni tanqid qilish va aksincha, haqiqatan ham muhim, arziydigan muammolarga tegmaslik nuqtai nazaridan tanqid qilishadi. muhokama qilish va sotuvchi tomonidan hal qilinmaydi. 1C platformasini oqilona va muvozanatli ko'rib chiqish mantiqiy deb o'ylayman. U nima qila oladi, nima qila olmaydi, nima qilishi kerak, lekin qilmaydi, va shirinlik uchun, portlash bilan nima qiladi va %technology_name% da ishlab chiquvchilaringiz yuz yil qilib, uni tashlab yuborishadi. bir yillik byudjetdan ortiq.

Natijada, siz menejer yoki arxitektor sifatida 1C dan qanday vazifani qo'llash sizga foydali bo'lishini va uni qayerda issiq dazmol bilan yoqish kerakligini aniq tushuna olasiz. "1C bo'lmagan" dunyoda ishlab chiquvchi sifatida siz 1C da shov-shuvga sabab bo'layotgan narsalarni ko'rishingiz mumkin. Va 1C dasturchisi sifatida siz tizimingizni boshqa tillar ekotizimlari bilan taqqoslashingiz va dasturiy ta'minotni ishlab chiqishning koordinata tizimidagi joylashuvingizni tushunishingiz mumkin.

Kesish ostida 1C, 1C tanqidchilari, Java, .NET va umuman olganda juda ko'p qalin hujumlar mavjud ... Fan to'lgan, xush kelibsiz!

Men haqimda

Men suhbat mavzusi bilan taxminan 2004 yildan beri tanishman. Men, ehtimol, 6 yoshimdan beri dasturlash bilan shug'ullanganman, professor Fortran haqida mushuk, chumchuq va tırtıl haqida komikslar yozilgan kitobni olgan paytdan boshlab. Men kitobdagi rasmlardan mushuk yozgan dasturlarni tahlil qildim va ular nima qilganini bilib oldim. Ha, o'sha paytda menda haqiqiy kompyuter yo'q edi, lekin kitobning tarqalishi bo'yicha chizma bor edi va men X mushukiga josuslik qilgan buyruqlarni kiritib, qog'oz tugmachalarini halol bosdim.

Keyin maktabda BK0011 va BASIC, universitetda C++ va assemblerlar, keyin 1C va keyin eslashga dangasa bo'lgan boshqa narsalar bor edi. So'nggi 15 yil davomida men asosan 1C bilan shug'ullanaman, nafaqat kodlash, balki umuman 1C. Bu yerda vazifalar, boshqaruv va devoplarni sozlash. So'nggi 5 yil davomida men boshqa 1C foydalanuvchilari uchun ishlab chiqish va avtomatlashtirish vositalarini ishlab chiqish, maqolalar va kitoblar yozish nuqtai nazaridan ijtimoiy foydali faoliyat bilan shug'ullanaman.

Keling, muhokama mavzusi haqida qaror qabul qilaylik

Birinchidan, nima haqida gaplashmoqchi ekanligimizni aniqlaylik, chunki "1C" harflari ko'p narsalarni anglatishi mumkin. Bunday holda, "1C" harflari bilan biz faqat zamonaviy sakkizinchi versiyaning "1C: Enterprise" ishlab chiqish tizimini nazarda tutamiz. Biz ishlab chiqaruvchi va uning siyosati haqida ko'p gapirmaymiz (lekin biz biroz qilishimiz kerak) Biz ushbu ramka yordamida yozilgan maxsus ilovalarni muhokama qilmaymiz. Texnologiya alohida, ilovalar aka konfiguratsiyalar alohida.

Yuqori darajadagi arxitektura 1C: Enterprise

Men "ramka" so'zini bejiz tilga olganim yo'q. Ishlab chiquvchi nuqtai nazaridan, 1C platformasi aniq ramka hisoblanadi. Va siz unga aynan ramka kabi munosabatda bo'lishingiz kerak. Ba'zi bir ish vaqti (mos ravishda JVM yoki CLR) tomonidan bajariladigan Spring yoki ASP.NET deb o'ylab ko'ring. Shunday bo'ladiki, an'anaviy dasturlash dunyosida ("1C emas") ramkalar, virtual mashinalar va maxsus ilovalarga bo'linish tabiiydir, chunki bu komponentlar odatda turli ishlab chiqaruvchilar tomonidan ishlab chiqilgan. 1C dunyosida ishlab chiqish doirasi va ish vaqtining o'zini aniq ajratish odatiy hol emas, bundan tashqari, ramka yordamida yozilgan maxsus ilovalar ham asosan 1C tomonidan ishlab chiqilgan. Natijada, ba'zi chalkashliklar paydo bo'ladi. Shuning uchun, maqola doirasida biz 1C ni bir vaqtning o'zida bir necha tomondan ko'rib chiqishimiz va uni bir nechta koordinata o'qlari bo'yicha tasniflashimiz kerak. Va har bir koordinata o'qida biz jigarrang moddadan bir belkurak qo'yamiz va mavjud yechimning xususiyatlari, afzalliklari va kamchiliklarini ko'rib chiqamiz.

1C bo'yicha nuqtai nazarlar

Xaridor uchun 1C

Xaridor avtomatlashtirish tizimini sotib oladi, uning yordamida u o'z biznesini avtomatlashtirish muammolarini tezda hal qiladi. Biznes kichik savdo maydonchasi yoki yirik xolding kompaniyasi bo'lishi mumkin. Ushbu korxonalarning ehtiyojlari har xil ekanligi aniq, ammo ikkalasi ham bitta platforma kod bazasi tomonidan qo'llab-quvvatlanadi.

1C xaridori uchun bu bozorga tez chiqish vaqti. Tez. Java, C# yoki JS dan tezroq. O'rtacha. Kasalxona atrofida. React-dan foydalangan holda tashrif qog'ozi veb-sayti yaxshiroq bo'lishi aniq, ammo WMS tizimining backend 1C da tezroq ishga tushadi.

1C vosita sifatida

Har bir texnologik yechimning qo'llanilishi chegaralari mavjud. 1C umumiy maqsadli til emas, u o'z doirasidan alohida yashamaydi. Sizga kerak bo'lganda 1C dan foydalanish tavsiya etiladi:

  • server ilovasi
  • moliya paydo bo'ladigan dastur
  • tayyor UI, ORM, Reporting, XML/JSON/COM/PDF/YourDataTransferingFormat bilan
  • fon jarayonlari va ishlarni qo'llab-quvvatlash bilan
  • rolga asoslangan xavfsizlik bilan
  • skriptli biznes mantig'i bilan
  • prototipni tezda yaratish qobiliyati va bozorga chiqish vaqti kam

Agar xohlasangiz, sizga 1C kerak emas:

  • mashinani o'rganish
  • GPU hisob-kitoblari
  • kompyuter grafikalari
  • matematik hisoblar
  • CAD tizimi
  • signalni qayta ishlash (ovoz, video)
  • yuz minglab rps bilan http qo'ng'iroqlarini yuqori yuklang

1C ishlab chiqaruvchi kompaniya sifatida

Dasturiy ta'minot ishlab chiqaruvchisi sifatida 1C biznesi nima ekanligini tushunishga arziydi. 1C kompaniyasi biznes muammolarini avtomatlashtirish orqali hal qiladi. Katta yoki kichik turli xil korxonalar, lekin u sotadi. Ushbu maqsadga erishish vositalari biznes ilovalari hisoblanadi. Buxgalteriya hisobi, ish haqi hisobi va boshqalar uchun. Ushbu ilovalarni yozish uchun kompaniya o'zining biznes ilovalarini ishlab chiqish platformasidan foydalanadi. Xuddi shu biznes ilovalarining umumiy vazifalari uchun maxsus mo'ljallangan:

  • moliyaviy hisob
  • biznes mantig'ini oson sozlash
  • heterojen IT landshaftlarida keng integratsiya imkoniyatlari

Ishlab chiqaruvchi sifatida 1C bu sizga hamkorlar va mijozlar bilan g'alaba qozonish rejimida ishlash imkonini beruvchi strategiya deb hisoblaydi. Siz bu bilan bahslashishingiz mumkin, ammo kompaniya taxminan shunday targ'ib qiladi: biznes muammolariga tayyor echimlar, ular hamkorlar tomonidan tezda moslashtiriladi va har qanday IT landshaftiga integratsiya qilinadi.

1C uchun barcha da'volar yoki istaklar faqat ushbu prizma orqali ko'rib chiqilishi kerak. "Biz 1C da OOP ni xohlaymiz", deydi ishlab chiquvchilar. "Platformada OOP-ni qo'llab-quvvatlash bizga qancha turadi, bu bizga qutilar savdosini oshirishga yordam beradimi?" - deydi 1C. Biznes muammolarini hal qilish uchun o'zining "prizmasini" ochadi:

- Hey, biznes, 1C-da OOP istaysizmi?
- Bu mening muammolarimni hal qilishga yordam beradimi?
- Kim biladi...
- Unda kerak emas

Bu yondashuv kimning qarashiga qarab yaxshi yoki yomon bo'lishi mumkin, ammo bu shunday. 1C-da X xususiyati yo'qligi haqida gapirganda, u biron bir sababga ko'ra emas, balki "amalga oshirish qiymati va foyda miqdori" tanlovi kontekstida ekanligini tushunishingiz kerak.

Texnologik tasnifi

"Aslida, Odinesniklar g'amxo'r metodologlar va 1C platformasini ishlab chiquvchilar tomonidan sinchkovlik bilan tanlangan eng yaxshi naqshlardan foydalanish uchun qo'llaridan kelganini qiladilar.
Oddiy boshqariladigan shakl uchun ahmoq kodingizni yozganingizda, aslida siz foydalanasiz modelni ko'rish nazoratchisi с ma'lumotlarni ikki tomonlama bog'lash в uch qatlamli ma'lumotlar-ilova-motori, xushbo'y yuqori darajadagi ob'ektga aloqador xaritalash asosda deklarativ metama'lumotlar tavsifio'ziga xos platformadan mustaqil so'rovlar tili, c deklarativ ma'lumotlarga asoslangan foydalanuvchi interfeysi, to'liq shaffof ketma-ketlashtirish va domenga yo'naltirilgan dastur tili.

1C ishlab chiquvchilari G'arbdagi hamkasblaridan farq qiladigan joy PRda. Ular har qanday bema'nilikka katta nom berishni yaxshi ko'radilar va u bilan iflos sumka kabi yugurishadi."
A. Orefkov

1C platformasi klassik 3 darajali arxitekturaga ega bo'lib, uning markazida dastur serveri (yoki kichik do'kondorlar uchun kam pul evaziga uning emulyatsiyasi) joylashgan. MS SQL yoki Postgres DBMS sifatida ishlatiladi. Oracle va IBM DB2-ni qo'llab-quvvatlash ham mavjud, ammo bu juda ezoterik; agar siz ushbu ma'lumotlar bazalarida 1C-ni o'rta va yuqori yuk ostida ishlatsangiz nima bo'lishini hech kim bilmaydi. 1C ning o'zi buni bilmasligiga ishonaman.

Mijoz qismi foydalanuvchi mashinasida o'rnatilgan nozik mijoz yoki veb-mijozdir. Asosiy xususiyat shundaki, dasturchilar 2 xil kod yozmaydilar, ular bitta dasturni, bir tilda yozadilar va agar xohlasangiz yoki kerak bo'lsa, uni brauzerda ko'rsatishingiz mumkin. U erda kim haqiqiy to'liq stek va front va backend, node.js uchun yagona tilni xohladi? Ular hech qachon oxirigacha xuddi shunday ishni qila olmadilar. Haqiqiy to'liq stek mavjud, ammo siz uni 1C da yozishingiz kerak bo'ladi. Taqdirning kinoyasi, shunga o'xshash narsalar :)

Bulutli SaaS yechimi 1C:Fresh brauzer rejimida ham ishlaydi, unda siz 1C sotib olmaysiz, lekin kichik ma'lumotlar bazasini ijaraga oling va u erda shawarma savdosini kuzatib boring. Faqat brauzerda, hech narsa o'rnatmasdan yoki sozlamasdan.

Bundan tashqari, 1C-da "muntazam dastur" deb ataladigan eski mijoz mavjud. Legacy - meros, 2002 yilda ilovalar dunyosiga xush kelibsiz, lekin biz hali ham ekotizimning hozirgi holati haqida gapiramiz.

1C server qismi klasterga yangi mashinalar qo'shish orqali klasterlash va masshtablarni qo'llab-quvvatlaydi. Bu erda juda ko'p nusxalar buzilgan va bu haqda maqolada alohida bo'lim bo'ladi. Muxtasar qilib aytganda, bu HAProxy-ning orqasida bir nechta bir xil misollarni qo'shish bilan bir xil emas.

Ilovalarni ishlab chiqish tizimi o'zining dasturlash tilidan foydalanadi, bu rus tiliga tarjima qilingan biroz yaxshilangan VB6 ga o'xshaydi. Rus tilidagi hamma narsani yomon ko'radigan, "agar" "agar" deb tarjima qilinganiga ishonmaydigan odamlar uchun ikkinchi sintaksis varianti taklif etiladi. Bular. Agar xohlasangiz, uni 1C da VB dan farqlanmaydigan qilib yozishingiz mumkin.

1C - Yaxshi va yomon. Golivarlarda nuqtalarning 1C atrofida joylashishi

Aynan shu dasturlash tili 1C taxalluslarining o'z platformalariga nisbatan nafratlanishining asosiy sababidir. Keling, sababsiz emasligini tan olaylik. Til imkon qadar sodda tarzda ishlab chiqilgan bo'lib, hech bo'lmaganda MDHda miqyosda "ISHLAB CHIQARISHLAR, ISHLAB CHIQARISHLAR" mantrasini bajarish uchun mo'ljallangan. Bunday yechimning tijorat mohiyati, menimcha, aniq ko'rinadi: ko'proq ishlab chiquvchilar, bozorni qamrab olish. Bu 45% dan 95% gacha bo'lgan turli hisob-kitoblarga ko'ra amalga oshdi. Men darhol aytamanki, siz o'ylagan tilda yozish juda oson. Va men juda ko'p dasturlash tillarini bilaman.

Keling, tildan boshlaylik.

1C dasturlash tili

Ayni paytda tizimning kuchli va zaif nuqtasi. Oson kirish va o'qishni ta'minlaydi. Boshqa tomondan, u 8-yilda 2002-versiya chiqqandan beri yangilanmagan va ma'naviy jihatdan eskirgan. Kimdir "asosiy kamchilik - OOP yo'qligi" deb aytadi va ular noto'g'ri bo'ladi. Birinchidan, FLOga nafaqat Nuraliev, balki Torvalds ham yoqmaydi. Ikkinchidan, OOP hali ham mavjud.

Ishlab chiquvchi nuqtai nazaridan, uning ixtiyorida DBMSda ko'rsatilgan tayanch sinflari bo'lgan ramka mavjud. Ishlab chiquvchi "Katalog" asosiy sinfini olishi va undan "Mijozlar" katalogini meros qilib olishi mumkin. U unga yangi sinf maydonlarini qo'shishi mumkin, masalan, INN va Manzil, shuningdek, agar kerak bo'lsa, asosiy sinfning usullarini, masalan, OnWrite/AtRecord usulini bekor qilishi (bekor qilishi) mumkin.

Ramka shunday yaratilganki, chuqurroq meros kamdan-kam talab qilinadi va OOPdagi cheklov, menimcha, mantiqiy. 1C domenga asoslangan rivojlanishga e'tibor qaratadi va sizni, birinchi navbatda, ishlab chiqilayotgan yechimning mavzu sohasi haqida o'ylashga majbur qiladi va bu yaxshi. Nafaqat vasvasa yo'q, balki biron bir joyda domendan ba'zi ma'lumotlarni ko'rsatish uchun 10 xil DTO va ViewModels yozishga hojat yo'q. 1C ishlab chiqaruvchisi har doim bitta ob'ekt bilan ishlaydi, idrok kontekstini o'xshash nomlarga ega, bir xil ob'ektni ifodalovchi, ammo boshqa tomondan o'nlab sinflar bilan aralashtirmasdan. Har qanday .NET ilovasi, masalan, JSON-ga seriyalashtirish va mijozdan serverga ma'lumotlarni uzatish uchun besh yoki ikkita ViewModel va DTO-ni o'z ichiga olishi shart. Ilova kodingizning taxminan 10-15% AutoMapper kabi qalam yoki tayoqchalar yordamida ma'lumotlarni bir sinfdan ikkinchisiga o'tkazishga sarflanadi. Bu kod yozilishi kerak va dasturchilar uni yaratish va saqlash uchun pul to'lashlari kerak.

Ma'lum bo'lishicha, 1C tilini asosiy tillar darajasiga qadar murakkablashtirmasdan rivojlantirish qiyin, shuning uchun soddalik afzalligini yo'qotadi. Sotuvchining vazifasi nimada hal qilinmoqda: ko'chada ushlangan har qanday talaba talab qilinadigan sifat darajasi bilan moslashtira oladigan standart echimni chiqarish (ya'ni, do'kondan yirik zavodgacha bo'lgan qoplama tugallangan). Agar siz do'kon bo'lsangiz, talaba oling; agar siz fabrika bo'lsangiz, uni amalga oshirish bo'yicha sherigingizdan guru oling. Amalga oshirish bo'yicha hamkorlar talabalarni guru narxida sotishlari ramka bilan bog'liq muammo emas. Arxitektura nuqtai nazaridan, ramka ikkalasining muammolarini hal qilishi kerak, standart konfiguratsiyalar kodi (biz uni xususiylashtirish va'dasi bilan korxonalarga sotganmiz) talaba tushuna oladigan bo'lishi kerak va guru siz xohlagan narsani tushunishi kerak.

Mening fikrimcha, tilda haqiqatan ham etishmayotgan narsa, sizni mumkin bo'lgandan ko'ra ko'proq yozishga majbur qiladigan narsa - bu mijoz tomonidan to'langan vaqtni behuda sarflashdir.

  • Darajada yozish imkoniyati, masalan, TypeScript (natijada IDE-da kodni tahlil qilish vositalari yanada rivojlangan, refaktoring, kamroq tajovuzkor jamblar)
    Birinchi sinf ob'ektlari sifatida funktsiyalarning mavjudligi. Biroz murakkabroq kontseptsiya, ammo odatdagi qozon kodining miqdori sezilarli darajada kamayishi mumkin. Talabaning kodni tushunishi, IMHO, ovoz balandligining kamayishi tufayli hatto ortadi
  • Universal to'plam literallari, initsializatorlar. Xuddi shu narsa - yozilishi va/yoki ko'z bilan qarash kerak bo'lgan kod miqdorini kamaytirish. To'plamlarni to'ldirish 9000C dasturlash vaqtining 1% dan ortig'ini oladi. Buni sintaktik shakarsiz yozish uzoq, qimmat va xatoga yo'l qo'ymaydi. Umuman olganda, 1C yechimlaridagi LOC miqdori mavjud ochiq ramkalar va umuman, sizning korxonangiz jamlangan java bilan solishtirganda barcha mumkin bo'lgan chegaralardan oshib ketadi. Til batafsil va bu ma'lumotlar, xotira, IDE tormozlari, vaqt, pul miqdoriga aylanadi ...
  • Nihoyat, konstruksiyalar Menda bu qurilishning rus tiliga muvaffaqiyatli tarjimasini topa olmaganligi sababli etishmayotgan degan faraz bor :)
  • O'z ma'lumotlar turlari (OOPsiz), VB6 dan Type analoglari. Bu sizga BSPdagi sharhlar va ushbu tuzilmalarni yaratadigan sehrli usullardan foydalangan holda tuzilmalarni yozmaslikka imkon beradi. Biz olamiz: kamroq kod, nuqta orqali maslahat, muammoni tezroq hal qilish, matn terish xatolari va tuzilmalarning etishmayotgan xususiyatlari tufayli kamroq xatolar. Endi foydalanuvchi tuzilmalarini terish butunlay Standart quyi tizim kutubxonasining ishlab chiqish guruhiga bog'liq bo'lib, u o'z kreditiga ko'ra, o'tkazilgan parametr tuzilmalarining kutilayotgan xususiyatlari bo'yicha sharhlarni diqqat bilan yozadi.
  • Veb-mijozda asinxron qo'ng'iroqlar bilan ishlashda shakar yo'q. ProcessingNotifications ko'rinishidagi qayta qo'ng'iroq - bu asosiy brauzerlarning API-ning to'satdan o'zgarishi natijasida yuzaga kelgan vaqtinchalik qo'ltiq, lekin siz doimo shunday yashay olmaysiz; asinxron kodni "talabalar tushunishi" ning afzalligi yo'qoladi. ko'proq va ko'proq. Asosiy IDE-da ushbu paradigmani qo'llab-quvvatlamang va vaziyat yanada yomonlashadi.

Bu dolzarb muammolardan biri, ro'yxat yanada kattaroq bo'lishi mumkinligi aniq, lekin unutmasligimiz kerakki, bu hali ham umumiy maqsadli til emas, u ko'p qirrali, lambda funktsiyalarini, GPU-ga kirishni va tezkorlikni talab qilmaydi. suzuvchi nuqtali hisoblar. Bu biznes mantiqiy skript tili.

Bu til bilan ko'p ishlagan, js yoki c# ga qaragan dasturchi shu til doirasida zerikib qoladi. Bu haqiqat. Unga rivojlanish kerak. Sotuvchi uchun shkalaning boshqa tomonida ko'rsatilgan xususiyatlarni amalga oshirish xarajatlari ularni amalga oshirilgandan so'ng daromadning oshishi bilan taqqoslanadi. Bu erda men hozirda kompaniyaning nazarida nima og'irroq ekanligi haqida hech qanday ma'lumotga ega emasman.

Rivojlanish muhiti

Bu yerda ham ishlar silliq kechmayapti. Ikkita rivojlanish muhiti mavjud. Birinchisi, etkazib berish tarkibiga kiritilgan Konfigurator. Ikkinchisi Eclipse asosida ishlab chiqilgan Enterprise Development Tools muhiti yoki qisqacha EDT.

Konfigurator to'liq ishlab chiqish vazifalarini taqdim etadi, barcha xususiyatlarni qo'llab-quvvatlaydi va bozorda asosiy muhit hisoblanadi. Shuningdek, u ma'naviy jihatdan eskirgan, mish-mishlarga ko'ra, rivojlanmaydi - o'z ichidagi texnik qarz miqdori tufayli. Vaziyatni ichki API ochish orqali yaxshilash mumkin (do'stlik shaklida Qordan odam A. Orefkova yoki mustaqil asosda), lekin bu shunday emas. Amaliyot shuni ko'rsatdiki, agar sotuvchi xalaqit bermasa, jamoa IDEda o'z xususiyatlarini yozadi. Lekin bizda bor narsa bor. Konfigurator 2004-2005 yillarda ajoyib edi, o'sha davrdagi Visual Studio'ni juda eslatardi, ba'zi joylarda u yanada salqinroq edi, lekin u o'sha paytlarda tiqilib qolgan edi.

Bundan tashqari, o'sha vaqtdan beri o'rtacha standart yechim hajmi bir necha bor o'sdi va bugungi kunda IDE o'zi oziqlanadigan kod miqdori bilan bardosh bera olmaydi. Foydalanish va qayta ishlash imkoniyatlari hatto nolga teng emas, ular qizil rangda. Bularning barchasi ishlab chiquvchilarga ishtiyoq qo'shmaydi va ular boshqa ekotizimlarga o'tishni va u erda shiddatli kodlashni davom ettirishni orzu qiladi, lekin o'zining xatti-harakati bilan yuzingizga tupurmaydigan yoqimli muhitda.

Shu bilan bir qatorda, Eclipse-da qurilgan, noldan yozilgan IDE taklif etiladi. U erda manbalar, boshqa har qanday dasturiy ta'minotda bo'lgani kabi, matnli fayllar ko'rinishida yashaydi, GIT-da saqlanadi, so'rov tarmoqlarini torting, bularning barchasi. Salbiy tomoni shundaki, u ko'p yillar davomida beta holatini tark etmadi, garchi u har bir nashr bilan yaxshilanib bormoqda. Men EDT ning kamchiliklari haqida yozmayman, bugun bu minus, ertaga bu sobit xususiyat. Bunday tavsifning ahamiyati tezda yo'qoladi. Bugungi kunda EDT-da rivojlanish mumkin, ammo bu g'ayrioddiy, siz ma'lum miqdordagi IDE xatolariga tayyor bo'lishingiz kerak.

Agar siz yuqorida aytib o'tilgan "1C prizmasi" orqali vaziyatga qarasangiz, siz shunday bir narsaga ega bo'lasiz: yangi IDE-ning chiqarilishi qutilar savdosini oshirmaydi, ammo DEVELOPERS chiqishi kamayishi mumkin. Ishlab chiquvchilarning qulayligi nuqtai nazaridan ekotizimni nima kutayotganini aytish qiyin, ammo Microsoft o'z xizmatlarini juda kech taklif qilib, mobil ishlab chiquvchilarni allaqachon zeriktirdi.

Rivojlanishni boshqarish

Bu erda hamma narsa kod yozishdan ko'ra ancha yaxshi, ayniqsa yaqinda, jamiyatning sa'y-harakatlari ma'muriyatni avtomatlashtirish muammolarini yoritib berganda, 1C omborini axlat qutisiga tashlashga va git, tezkor ayblov, kodni ko'rib chiqishni talab qiluvchi prototiplarni ishga tushirdi. , statik tahlil, avtomatik joylashtirish va boshqalar. Platformaga ishlab chiqish vazifalarini avtomatlashtirish darajasini oshiradigan ko‘plab funksiyalar qo‘shildi. Biroq, bu xususiyatlarning barchasi faqat va faqat o'zimizning yirik mahsulotlarimizni ishlab chiqish uchun qo'shildi, chunki biz avtomatizatsiyasiz qila olmasligimiz ayon bo'ldi. Avtomatik birlashmalar, KDiff bilan uch tomonlama taqqoslash va boshqalar bor edi. Github-da ishga tushirilgan gitkonvertor, Ochig'ini aytganda, loyihadan mafkuraviy tortib olingan gitsync, lekin sotuvchi kompaniyaning jarayonlariga mos ravishda o'zgartirilgan. Ochiq manbadan kelgan o'jar yigitlar tufayli 1C da ishlab chiqishni avtomatlashtirish yo'lga qo'yildi. Konfigurator uchun ochiq API, IMHO, shuningdek, asosiy IDE ning axloqiy qoloqligini o'zgartiradi.

Bugungi kunda git-da 1C manbalarini Jira-dagi muammolar, Crucible-dagi sharhlar, Jenkins-ning tugmachalari va Allure-ning 1C-da kod sinovi bo'yicha hisobotlari bilan bog'liq holda saqlash va hattoki SonarQube-da statik tahlil - bu yangilikdan uzoq, aksincha 1C rivojlanishi ko'p bo'lgan kompaniyalarda asosiy oqim.

Ma'muriyat

Bu yerda aytadigan gaplar ko‘p. Birinchidan, bu, albatta, server (1C server klasteri). Ajoyib narsa, lekin u to'liq qora quti bo'lib, etarlicha batafsil hujjatlashtirilgan, ammo o'ziga xos tarzda - bir nechta serverlarda yuqori yuklash rejimida uzluksiz ishlashni o'zlashtirish - bu "qora quti" ni taqib yuradigan bir necha kishining ishidir. "Texnologik masalalar bo'yicha mutaxassis" yozuvi bilan medal. Shuni ta'kidlash kerakki, printsipial jihatdan 1C serverini boshqarish boshqa serverlarni boshqarishdan farq qilmaydi. Bu xotira, protsessor va disk resurslarini iste'mol qiladigan tarmoqqa asoslangan, ko'p tarmoqli dastur. Telemetriyani yig'ish va diagnostika qilish uchun keng imkoniyatlarni taqdim etadi.

Bu erda muammo shundaki, sotuvchi ushbu diagnostika uchun tayyor echimlar nuqtai nazaridan alohida hech narsa taklif qilmaydi. Ha, 1C bor: Asboblar va boshqaruv markazi, ular hatto juda yaxshi, lekin ular juda qimmat va hamma ham ularga ega emas. Jamiyatda Grafana, Zabbix, ELK va boshqa narsalarni standart boshqaruv to'plamidan ulash bo'yicha bir qator ishlanmalar mavjud, ammo ko'pchilikka mos keladigan yagona echim yo'q. Vazifa o'z qahramonini kutmoqda. Va agar siz 1C klasterida ishga tushirishni rejalashtirayotgan biznes bo'lsangiz, sizga Mutaxassis kerak. O'zingizning ichingizdan yoki tashqaridan, lekin sizga kerak. Serverning ishlashi uchun vakolatlarga ega bo'lgan alohida rol mavjudligi normaldir, har bir 1C foydalanuvchisi buni bilishi kerak emas, shunchaki bunday rol kerakligini tushunishingiz kerak. Masalan, SAPni olaylik. U erda dasturchi, agar undan dastur serverida biror narsani sozlashni so'rashsa, hatto stulidan ham turmaydi. U shunchaki ahmoq bo'lishi mumkin va u uyalmaydi. SAP metodologiyasida buning uchun alohida xodim roli mavjud. Ba'zi sabablarga ko'ra, 1C sanoatida bu bir xil ish haqi uchun bitta xodimga birlashtirilishi kerak, deb ishoniladi. Bu aldanish.

1C serverining kamchiliklari

Aynan bitta minus bor - ishonchlilik. Yoki, agar xohlasangiz, oldindan aytib bo'lmaydigan. Serverning to'satdan g'alati xatti-harakati allaqachon shaharning gapiga aylangan. Universal vosita - serverni to'xtatish va barcha keshlarni tozalash - hatto mutaxassisning qo'llanmasida tasvirlangan va hatto buni amalga oshiradigan ommaviy kitob tavsiya etiladi. Agar sizning 1C tizimingiz nazariy jihatdan ham qila olmaydigan ishni qila boshlasa, seans ma'lumotlari keshini tozalash vaqti keldi. Mening taxminlarimga ko'ra, butun mamlakatda 1C serverini bunday protsedurasiz qanday boshqarishni biladigan atigi uchta odam bor va ular sirlarni baham ko'rishmaydi, chunki... ular bundan yashaydilar. Ehtimol, ularning siri shundaki, ular sessiya ma'lumotlarini tozalashadi, lekin ular bu haqda hech kimga aytmaydilar, do'stim.

Aks holda, 1C serveri boshqa har qanday dastur bilan bir xil bo'lib, hujjatlarni o'qish va tamburni taqillatish orqali xuddi shunday tarzda boshqariladi.

Docker

Ishlab chiqarishda konteynerli 1C serveridan foydalanishning foydaliligi hali isbotlanmagan. Server oddiygina balanslashtiruvchi orqasiga tugunlarni qo'shish orqali klasterlashtirilmaydi, bu esa ishlab chiqarishni konteynerlashtirishning afzalliklarini minimal darajaga tushiradi va konteynerlarda yuqori yuklanish rejimida muvaffaqiyatli ishlash amaliyoti o'rnatilmagan. Natijada, sinov muhitini sozlash uchun faqat ishlab chiquvchilar Docker+1C dan foydalanadilar. U erda u juda foydali, qo'llaniladi, zamonaviy texnologiyalar bilan o'ynashga va konfiguratorning umidsizligidan dam olishga imkon beradi.

Tijorat komponenti

Investitsion nuqtai nazardan, 1C dastur sinflarining keng imkoniyatlari tufayli biznes g'oyalarini tezda ishga tushirish muammosini hal qilishga imkon beradi. Qutidagi 1C juda yaxshi hisobot berishni, har qanday narsa bilan integratsiyani, veb-mijozni, mobil mijozni, mobil ilovani, turli ma'lumotlar bazalarini qo'llab-quvvatlashni, shu jumladan. bepul, o'zaro faoliyat platformalar ham server, ham o'rnatilgan mijoz qismlari. Ha, ilovalarning UI sariq bo'ladi, ba'zida bu minus, lekin har doim ham emas.
1C ni tanlab, biznes juda keng doiradagi ilovalarni yaratish imkonini beruvchi dasturiy yechimlar to‘plamini, shuningdek bozorda Javaistlarga qaraganda kamroq pul talab qiladigan va shu bilan birga tezroq natijalarni beradigan ko‘plab ishlab chiquvchilarni oladi.

Misol uchun, PDF hisob-fakturani mijozga yuborish vazifasi bir soatlik talaba ishida hal qilinishi mumkin. .NET-dagi xuddi shu muammoni xususiy kutubxona sotib olish yoki qattiq, soqolli dasturchi tomonidan bir necha kun yoki hafta kodlash orqali hal qilish mumkin. Ba'zan ikkalasi ham bir vaqtning o'zida. Ha, men faqat PDF yaratish haqida gapirgan edim. Biz bu qonun loyihasi qayerdan kelishini ham aytmadik. Veb-frontender operator ma'lumotlarni kiritadigan shaklni yaratishi kerak, backender JSON-ni uzatish uchun dto modellarini, ma'lumotlar bazasida saqlash modellarini, ma'lumotlar bazasining o'zini tuzilishini, unga ko'chirishni, grafik shaklni yaratishi kerak. aynan shu hisobni ko'rsatish va shundan keyingina - PDF. 1C da barcha vazifa noldan boshlab roppa-rosa bir soat ichida bajariladi.

Bitta biznes-jarayoni sotib olingan/sotilgan kichik stend uchun to‘liq hisob-kitob tizimi 3 soat ichida amalga oshiriladi.Savdo hisoboti, tovarlarni sotib olish va sotish narxlarida hisobga olish, omborlar bo‘yicha taqsimlash, kirish huquqlarini nazorat qilish, veb-mijoz va mobil ilova. . Mayli, men arizani unutibman, ariza bilan 3 soatda emas, oltida.

Bu vazifa .NET dasturchisiga vizual studiyani toza kompyuterga o'rnatishdan uni mijozga ko'rsatishgacha qancha vaqt oladi? Rivojlanish narxi haqida nima deyish mumkin? Birhil narsa.

Platforma sifatida 1C ning kuchli tomonlari

1C kuchli emas, chunki u haqida dunyodagi eng yaxshi narsa bor. Aksincha, har bir alohida quyi tizimda siz dunyo dasturiy ta'minotida yanada qiziqarli analogni topishingiz mumkin. Biroq, omillarning kombinatsiyasiga asoslanib, men 1C ga o'xshash platformani ko'rmayapman. Bu erda tijorat muvaffaqiyati yotadi. Platformaning afzalliklari uning bo'ylab tarqalib ketgan va bu boshqa platformalarda qanday amalga oshirilganini ko'rganingizda eng aniq ko'rinadi. Asosan, bu hatto xususiyatlar emas, aksincha - bitta o'ziga xos paradigma foydasiga xususiyatlarni rad etish. Bir necha misol:

  1. Unicode. Qanday oddiyroq bo'lishi mumkin? 2019 yilda bir baytli ASCII kodlashlaridan foydalanishning hojati yo'q (qadimgi meros bilan integratsiyalashuvdan tashqari). Hech qachon. Lekin yoq. Qanday bo'lmasin, biron bir jadvaldagi kimdir bir baytli varchardan foydalanadi va dastur kodlash bilan bog'liq muammolarga duch keladi. 2015-yilda gitlab-ning LDAP avtorizatsiyasi kodlashlar bilan noto'g'ri ishlash tufayli muvaffaqiyatsiz tugadi; JetBrains IDE hali ham hamma joyda fayl nomlarida kirillcha bilan ishlamaydi. 1C dastur kodini ma'lumotlar bazasi qatlamidan yuqori sifatli izolyatsiya qilishni ta'minlaydi. U erda jadvallarni past darajada terish mumkin emas va ma'lumotlar bazasi darajasida qobiliyatsiz o'smirlarning jamblari mumkin emas. Ha, qobiliyatsiz o'smirlar bilan boshqa muammolar bo'lishi mumkin, ammo muammolarning xilma-xilligi ancha kichikdir. Endi siz menga ilovangiz to'g'ri ishlab chiqilganligini va ma'lumotlar bazasiga kirish qatlami kerakli darajada izolyatsiya qilinganligini aytasiz. Korporativ maxsus Java ilovangizga yana bir nazar tashlang. Yaqindan va halollik bilan. Sizning vijdoningiz sizni bezovta qiladimi? Keyin men siz uchun xursandman.
  2. Hujjatlar / ma'lumotnomalarni raqamlash. 1C da bu, albatta, eng moslashuvchan va eng yaxshi emas. Ammo ular bank dasturlarida va o'z-o'zidan yozilgan buxgalteriya tizimlarida nima qilishadi - bu shunchaki zulmat. Yoki identifikatsiya tiqilib qoladi (va keyin "oh, nega bizda teshiklar bor") yoki aksincha, ular DBMS darajasida qulflash bilan ishlaydigan generatorni yaratadilar (va to'siq bo'ladi). Aslida, bu oddiy ko'rinadigan vazifani bajarish juda qiyin - ob'ektlarning oxirigacha hisoblagichi, ma'lum bir kalitlar to'plamiga asoslangan o'ziga xoslik bo'limi, ma'lumotlarni parallel kiritish paytida ma'lumotlar bazasini bloklamasligi uchun prefiksatsiya. .
  3. Ma'lumotlar bazasidagi yozuvlarning identifikatorlari. 1C irodali qaror qabul qildi - barcha havola identifikatorlari mutlaqo sintetik va shu bilan birga. Va tarqatilgan ma'lumotlar bazalari va almashinuvlar bilan bog'liq muammolar yo'q. Boshqa tizimlarni ishlab chiquvchilar o'jarlik bilan identifikatsiya kabi narsalarni yaratadilar (bu qisqaroq!), Bir nechta tegishli misollarni yaratish vaqti kelguncha ularni GUIga torting (va keyin ular topiladi). Bu sizda yo'qmi? Rostini aytsam?
  4. Roʻyxatlar. 1C-da (katta) ro'yxatlar bo'ylab sahifalash va ular bo'ylab harakatlanish uchun juda muvaffaqiyatli mexanizmlar mavjud. Mexanizmdan to'g'ri foydalanish bilan darhol bron qilishimga ruxsat bering! Umuman olganda, mavzu juda yoqimsiz, uni ideal tarzda hal qilib bo'lmaydi: u intuitiv va sodda (lekin mijozda katta yozuvlar to'plami xavfi) yoki peyjing u yoki bu egrilikdir. Peyjing bilan shug'ullanadiganlar buni ko'pincha egri qiladilar. Halol aylantirish panelini yaratganlar ma'lumotlar bazasi, kanal va mijozni qo'shadilar.
  5. Boshqariladigan shakllar. Shubhasiz, veb-mijozda interfeys mukammal ishlamaydi. Lekin ishlaydi. Ammo boshqa ko'plab buxgalteriya va bank tizimlari uchun masofaviy ish joyini yaratish korxona darajasidagi loyihadir. Rad etish: Yaxshiyamki, uni dastlab internetda yaratganlar uchun bu ta'sir qilmaydi.
  6. Mobil ilova. Yaqinda siz bir xil ekotizimda mobil ilovalar yozishingiz mumkin. Bu veb-mijozga qaraganda bu erda biroz murakkabroq; qurilmalarning o'ziga xos xususiyatlari sizni ular uchun maxsus yozishga majbur qiladi, ammo shunga qaramay, siz mobil ishlab chiquvchilarning alohida guruhini yollamaysiz. Agar sizga kompaniyaning ichki ehtiyojlari uchun dastur kerak bo'lsa (korporativ muammoning mobil yechimi sariq UI dizaynidan muhimroq bo'lsa), siz shunchaki bir xil platformadan foydalanasiz.
  7. Hisobot. Bu so'z bilan men katta ma'lumotlarga ega BI tizimini va ETL jarayonidagi kechikishni nazarda tutmayapman. Bu yerda va hozir buxgalteriya hisobi holatini baholash imkonini beruvchi operativ xodimlar hisobotlariga taalluqlidir. Balanslar, o'zaro hisob-kitoblar, qayta baholash va boshqalar. 1C foydalanuvchi tomonida guruhlar, filtrlar va vizualizatsiya uchun moslashuvchan sozlamalarga ega hisobot tizimi bilan qutidan chiqadi. Ha, bozorda sovuqroq analoglar mavjud. Lekin hammasi birda bir yechim doirasida emas va ba'zan hammasi birda bir yechimdan yuqori narxda. Va ko'pincha buning aksi: faqat hisobot berish, lekin butun platformadan qimmatroq va sifat jihatidan yomonroq.
  8. Chop etish shakllari. Xodimlarga PDF formatidagi ish haqi varaqlarini elektron pochta orqali yuborish muammosini hal qilish uchun .NET dan foydalaning. Va endi hisob-fakturalarni chop etish vazifasi. Ularning nusxalarini bir xil PDF-ga saqlash haqida nima deyish mumkin? 1C taxallusi uchun har qanday tartibni PDF-ga chiqarish +1 qator koddir. Bu boshqa tilda kunlar yoki haftalar o'rniga + 40 soniya ish vaqti degan ma'noni anglatadi. 1C-da bosilgan shakl sxemalarini ishlab chiqish juda oson va pullik hamkasblari bilan raqobatlasha oladigan darajada kuchli. Ha, ehtimol, 1C elektron jadval hujjatlarida juda ko'p interaktiv imkoniyatlar mavjud emas, siz OpenGL yordamida masshtablash bilan 3D diagrammasini tezda ololmaysiz. Lekin bu haqiqatan ham kerakmi?

Bu funksionallikni cheklash yoki murosalarni amalga oshirish kelajakda muhim arxitektura foydasiga aylanadigan bir nechta misollardir. Hatto murosaga kelish yoki eng samarali variant emas - u allaqachon qutida va odatdagidek qabul qilinadi. Uni mustaqil ravishda amalga oshirish yoki imkonsiz bo'ladi (chunki bunday qarorlar loyihaning boshida qabul qilinishi kerak va bunga vaqt yo'q va arxitektor umuman yo'q) yoki bir nechta qimmat takrorlashlar. Ro'yxatdagi har bir nuqtada (va bu me'moriy echimlarning to'liq ro'yxati emas), siz o'lchovni bloklaydigan cheklovlarni o'zgartirishingiz va kiritishingiz mumkin. Qanday bo'lmasin, siz biznesmen sifatida dasturchilaringiz "tizimni noldan" yaratishda qo'llari tekis bo'lishi va nozik tizim masalalarini darhol yaxshi bajarishiga ishonch hosil qilishingiz kerak.

Ha, boshqa har qanday murakkab tizimda bo'lgani kabi, 1C-ning o'zi ham muayyan jihatlarda masshtabni bloklaydigan echimlarga ega. Biroq, takror aytaman, omillarning kombinatsiyasi, egalik narxi va oldindan hal qilingan muammolar soniga asoslanib, men bozorda munosib raqobatchini ko'rmayapman. Xuddi shu narx evaziga siz UI va veb-interfeysi, mobil ilovasi, hisobot, integratsiya va boshqa ko'plab narsalarga ega bo'lgan moliyaviy dastur tizimi, klasterlangan muvozanatli serverga ega bo'lasiz. Java dunyosida siz front-end va back-end jamoasini yollaysiz, uyda yozilgan server kodlarining past darajadagi disklarini tuzatasiz va 2 mobil OT uchun 2 ta mobil ilova uchun alohida to'laysiz.

Men 1C barcha holatlarni hal qiladi deb aytmayapman, lekin ichki korporativ dastur uchun, UI-ni markalashning hojati bo'lmaganda - yana nima kerak?

Bir qoshiq tar

Ehtimol, siz 1C dunyoni qutqaradi va korporativ tizimlarni yozishning boshqa barcha usullari noto'g'ri degan taassurot qoldirdi. Bu umuman bunday emas. Tadbirkor nuqtai nazaridan, agar siz 1C ni tanlasangiz, bozorga tez chiqishdan tashqari, quyidagi kamchiliklarni ham hisobga olishingiz kerak:

  • Server ishonchliligi. Haqiqatan ham uning uzluksiz ishlashini ta'minlaydigan yuqori sifatli mutaxassislar talab qilinadi. Men sotuvchidan bunday mutaxassislar uchun tayyor o'quv dasturidan xabardor emasman. Ekspert imtihoniga tayyorgarlik ko'rish uchun kurslar mavjud, ammo bu, mening fikrimcha, etarli emas.
  • Qo'llab-quvvatlash. Oldingi bandga qarang. Sotuvchidan yordam olish uchun uni sotib olishingiz kerak. Negadir bu 1C sanoatida qabul qilinmaydi. Va SAP bilan, bu deyarli sotib olish kerak va u hech kimni bezovta qilmaydi. Korporativ yordamsiz va xodimlar bo'yicha mutaxassis bo'lmasa, siz 1C nosozliklari bilan yolg'iz qolishingiz mumkin.
  • Shunga qaramay, siz 1C bilan mutlaqo hamma narsani qila olmaysiz. Bu vositadir va har bir vosita kabi uning qo'llanilishi chegaralari bor. 1C landshaftida "1C bo'lmagan" tizim me'moriga ega bo'lish juda ma'qul.
  • Yaxshi 1C taxalluslari boshqa tillardagi yaxshi dasturchilardan arzonroq emas. Yomon dasturchilarni, ular yozgan tildan qat'i nazar, yollash qimmatga tushadi.

Keling, nuqtalarni belgilaymiz

  • 1C - bu biznes uchun tezkor ilovalarni ishlab chiqish (RAD) asosidir va buning uchun mo'ljallangan.
  • Asosiy DBMS, mijoz interfeysi, juda yaxshi ORM va hisobotlarni qo'llab-quvvatlaydigan uch bosqichli havola
  • 1C qila olmaydigan narsalarni qila oladigan tizimlar bilan integratsiya qilish uchun keng imkoniyatlar. Agar siz mashinani o'rganishni xohlasangiz, Python-ni oling va natijani http yoki RabbitMQ orqali 1C ga yuboring
  • 1C yordamida hamma narsani qilishga intilishning hojati yo'q, siz uning kuchli tomonlarini tushunishingiz va ularni o'z maqsadlaringiz uchun ishlatishingiz kerak.
  • Texnologik ramka gadjetlarini qazib olishga va har N yilda yangi dvigatelga qayta loyihalashga intiladigan ishlab chiquvchilar 1C bilan zerikadi. U erda hamma narsa juda konservativ.
  • Ishlab chiquvchilar ham zerikadi, chunki ishlab chiqaruvchidan ular uchun juda kam tashvish bor. Zerikarli til, zaif IDE. Ular modernizatsiyani talab qiladi.
  • Boshqa tomondan, o'zlari yoqtiradigan boshqa texnologiyadan foydalanish va o'rganish orqali zavq topa olmaydigan dasturchilar yomon ishlab chiquvchilardir. Ular qichqiradi va boshqa ekotizimga o'tadi.
  • 1C taxalluslariga Python-da biror narsa yozishga ruxsat bermaydigan ish beruvchilar yomon ish beruvchilardir. Ular qiziquvchan aqlli xodimlarni yo'qotadilar va ularning o'rniga maymun kodlovchilari keladi, ular hamma narsaga rozi bo'lib, korporativ dasturiy ta'minotni botqoqqa sudrab boradilar. U hali ham qayta yozilishi kerak, shuning uchun Python-ga biroz oldinroq sarmoya kiritganingiz ma'qulmi?
  • 1C tijorat kompaniyasi bo'lib, faqat o'z manfaatlari va maqsadga muvofiqligi asosida xususiyatlarni amalga oshiradi. Buning uchun uni ayblay olmaysiz, biznes foyda haqida o'ylashi kerak, bu hayot
  • 1C Vasyaning ishlab chiquvchilari muammolariga emas, balki biznes muammolariga yechimlarni sotish orqali pul ishlaydi. Bu ikki tushuncha o'zaro bog'liq, ammo ustuvorlik aynan men aytganimdir. Ishlab chiquvchi Vasya 1C: Resharper uchun shaxsiy litsenziyani to'lashga tayyor bo'lganda, u juda tez paydo bo'ladi, A. Orefkovaning "Resharper" filmi buning dalilidir. Agar sotuvchi uni qo'llab-quvvatlasa va unga qarshi kurashmasa, ishlab chiquvchilar uchun dasturiy ta'minot bozori paydo bo'ladi. Endi bu bozorda shubhali natijalarga ega bo'lgan bir yarim o'yinchi bor va barchasi IDE bilan integratsiya salbiy va hamma narsa tayoqchalarda amalga oshirilganligi sababli.
  • Ko'p mashinali operatorning amaliyoti unutilib ketadi. Zamonaviy ilovalar kod tomondan ham, biznesdan foydalanish tomondan ham eslab qolish uchun juda katta. 1C serveri ham murakkablashmoqda, bitta xodimda barcha turdagi tajribalarni ushlab turish imkonsiz bo'ladi. Bu mutaxassislarga bo'lgan talabni keltirib chiqarishi kerak, bu 1C kasbining jozibadorligini va ish haqini oshirishni anglatadi. Agar ilgari Vasya bitta ish haqi uchun uchtasi birda ishlagan bo'lsa, endi siz ikkita Vasyani yollashingiz kerak va Vasyalar o'rtasidagi raqobat ularning darajasining umumiy o'sishiga turtki berishi mumkin.

xulosa

1C - bu juda munosib mahsulot. Narxlar oralig'ida men hech qanday analoglarni bilmayman, agar mavjud bo'lsa, sharhlarda yozing. Biroq, ishlab chiquvchilarning ekotizimdan chiqib ketishi tobora sezilarli bo'lib bormoqda va bu qanday qarasangiz ham, bu "miyaning oqishi". Sanoat modernizatsiyaga chanqoq.
Agar siz dasturchi bo'lsangiz, 1C-ga qo'lingizni tashlamang va boshqa tillarda hamma narsa sehrli deb o'ylamang. Siz kichik bo'lganingizda, ehtimol. Kattaroq narsani hal qilish kerak bo'lganda, tayyor echimlarni uzoqroq izlash va yanada intensiv ravishda bajarish kerak bo'ladi. Yechim qurilishi mumkin bo'lgan "bloklar" ning sifati nuqtai nazaridan, 1C juda va juda yaxshi.

Va yana bir narsa - agar sizga 1C laqabi yollash uchun kelgan bo'lsa, unda 1C taxallusi ishonchli tarzda etakchi tahlilchilar lavozimiga tayinlanishi mumkin. Ularning vazifa, mavzu sohasi va parchalanish ko'nikmalarini tushunishlari juda yaxshi. Ishonchim komilki, bu 1C rivojlanishida DDD-dan majburiy foydalanish bilan bog'liq. Shaxs birinchi navbatda vazifaning ma'nosi, predmet sohasi ob'ektlari o'rtasidagi aloqalar haqida o'ylashga o'rgatiladi va shu bilan birga integratsiya texnologiyalari va ma'lumotlar almashinuvi formatlari bo'yicha texnik ma'lumotlarga ega.

Ideal ramka mavjud emasligini bilib oling va o'zingizga g'amxo'rlik qiling.
Hamma yaxshi!

PS: katta rahmat speshurik maqolani tayyorlashda yordam uchun.

So'rovda faqat ro'yxatdan o'tgan foydalanuvchilar ishtirok etishlari mumkin. tizimga kirishiltimos.

Sizning korxonangizda 1C bormi?

  • 13,3%Umuman emas.71

  • 30,3%Bor, lekin faqat bir joyda buxgalteriya bo'limida. Boshqa platformalardagi asosiy tizimlar162

  • 41,4%Ha, asosiy biznes jarayonlari unda ishlaydi221

  • 15,0%1C o'lishi kerak, kelajak %technology_name%80 ga tegishli

534 foydalanuvchi ovoz berdi. 99 nafar foydalanuvchi betaraf qoldi.

Manba: www.habr.com

a Izoh qo'shish