Katta dasturiy so'zlar yoki iboralar

Cho'ntak himoyachisiAyrim istisno dasturchilar bilan ishlashda men tez-tez me'morlar, rahbarlar va ishlab chiquvchilar bilan uchrashuvlarda o'zimni topaman (ular menimcha) Mahsulot menejerlari yoki ularning mijozlarini qo'rqitish va qo'rqitish uchun u erga ba'zi bir katta so'zlarni yoki iboralarni tashlashni yaxshi ko'radilar.

Bu dasturchilar qilishni yoqtiradigan narsalardan biridir. Mana, ulardan o'ntasi juda sodda tavsif bilan (shubhasiz, hamma joyda ishlab chiquvchilarning g'azabini jalb qilaman, chunki men ularning terminologiyasini o'limga mahkum qilaman mening oddiy avtomobil metaforalarim):

  1. Abstraktsiya - bu qiyin jarayonni yoki funktsiyani talab qilmoqda va asosan uni mantiqiy ravishda sindirib tashlaydi ... yoki ierarxiya bo'yicha (A B ga, B C ga tegishli va hokazo) yoki xususiyati yoki funktsiyasi (rangi, o'lchami, vazni va boshqalar) bo'yicha. Abstraktsiya funksionallikni mantiqiy tartibga solish orqali ob'ektga yo'naltirilgan dasturlashni osonlashtiradi. Mashinamni qurish uchun ramka, dvigatel va korpusni alohida quraman.
  2. Amortizatsiya - bu tizimda eski kod mavjud bo'lib qolishi mumkin, ammo ularni o'chirib qo'yish kerak. Kod eskirganida, dasturchilar barcha havolalar eskiga o'tmaguncha kodni havola qilmaydi yoki undan yangi koddan foydalanmaydi, o'sha paytda uni olib tashlash kerak. Ba'zan, agar bu o'chib ketadigan xususiyat bo'lsa, siz foydalanuvchilarga bu yo'q bo'lib ketishi haqida ogohlantirish bilan uni bir oz ushlab turishingiz mumkin. Men yangi simli yangi stereo tizimni olaman, lekin eski simlarni qoldiraman va undan foydalanmayman.
  3. Kapsülleme - bu funktsiya tizimning boshqa qismlariga etib bormaganida, sizning ota-onangizda sizning dasturiy funktsiyalaringizni tartibga solish jarayoni. Agar sizda millionlab funktsiyalar mavjud bo'lsa, siz ularni global miqyosda mavjud bo'lishiga emas, balki ular faoliyat ko'rsatadigan sohalarda samarali tashkil etilishini va ishlashini xohlaysiz. Dvigatelni qo'llab-quvvatlovchi mexanikasini dvigatel bo'linmasiga qo'ydim ... Yog 'filtrini orqa o'rindiqqa qo'ymadim.
  4. meros olish - bu yana bir umumiy kodning (sinf) xususiyatlarini, uni qayta yozmasdan, yangi funksionallik uchun qayta ishlatish uchun olish qobiliyatidir. Ob'ektga yo'naltirilgan rivojlanishning yana bir yaxshi amaliyoti - bu meros. Mening avtomobil o'rindig'im bolani yoki kattalarni - unda kim o'tirsa, ko'tarib yurishi mumkin.
  5. Normallashtirish - bu ma'lumotlar bazasida ma'lumotlarning samaradorligini, ma'lumotnomalarni tuzish orqali tashkil qilish usuli. Misol uchun, agar men kun bo'yi svetoforlarni yozib olsam ... qizil, sariq va yashil. Har bir yozuvni qizil, sariq va yashil rang bilan yozishdan ko'ra - men 1, 2 va 3 ni yozaman, so'ngra 1 = qizil, 2 = sariq va 3 = yashil bo'lgan boshqa jadval tuzaman. Shu tarzda men qizil, sariq va yashil ranglarni faqat bir marta yozaman. Mening mashinamning har bir eshigi bir xil eshik tutqichiga ega. 4 ta tutqichga emas, balki 4 xil joyda ishlatiladigan bitta tutqich.
  6. Ob'ektga yo'naltirilgan - zamonaviy dasturlash tillarida bu aniq kodni funktsional imkoniyatlari bo'yicha qismlarga yozib, keyin ularni qayta ishlatishga imkon beradigan dizayn usuli. Masalan, men to'g'ri tuzilgan elektron pochta manzilini tekshirishni xohlasam bo'ladi. Funktsiyani bir marta yaratib, so'ngra o'zimning xohlagan joyimda ishlata olaman. Mening mashinamda bir xil yoki boshqa ishlab chiqaruvchilar tomonidan boshqa avtomobillarda ishlatilishi mumkin bo'lgan 18 dyuymli jantlar mavjud.
  7. Polimorfizm - Buni tushuntirish qiyin, lekin asosan boshqa holatlar uchun dinamik ravishda ishlatilishi mumkin bo'lgan kodni ishlab chiqish qobiliyatidir. Boshqacha qilib aytganda, u o'ziga xos va dinamik funktsiyalarni havolasi orqali meros qilib olishi mumkin. Bu juda samarali rivojlanish vositasidir. Men avtomashinamning elektr rozetkasidan telefonimni zaryad qilish yoki shinam nasosga sharbat etkazib berish uchun ishlata olaman.
  8. Recursion - bu kod o'zi murojaat qiladigan usul. Ba'zan, bu samarali va qasddan, lekin ba'zida sizning ilovalaringiz nazoratdan chiqib ketishi mumkin. Men o'zimning avtomobil stereo vositamni qidirishni bosaman va u radiostansiyalar orqali o'tadi. Hech qachon tugamaydi, davom etaveradi.
  9. Qayta ishlab chiqarish - bu ta'qib qilishni osonlashtirish yoki uni yaxshiroq tashkil qilish uchun kodni qayta yozish jarayoni, ammo qo'shimcha funktsiyalarni qo'shish shart emas. Men motorimni qayta tiklayman.
  10. Serverga yo'naltirilgan arxitektura (SOA) - ob'ektga yo'naltirilgan dasturlashni qabul qiling va uni ma'lum funktsiyalarni bajaradigan butun tizimlarga ega bo'lishingiz mumkin bo'lgan katta tizimlarga qo'llang. Sizda etkazib berish tizimida gapiradigan elektron tijorat tizimida gapiradigan mijozlar bilan munosabatlarni boshqarish tizimi bo'lishi mumkin. Men buyumlarni bir joydan ikkinchi joyga jo'natish uchun mashinam bilan treyler tortaman. Ularni ulash uchun men treyler to'sig'idan (XML) foydalanaman.

Men metaforalarim har doim ham maqsadga muvofiq emasligini tushunaman. Umid qilamanki, ular ozgina yordam berishdi!

Keyingi ishlab chiquvchi bilan uchrashuvda ushbu so'zlarni eshitganingizda ba'zi maslahatlar… qaytib o'tirmang va ularni qidirib topmang Vikipediya, ular tomosha qilishadi. Yengilma, ular hujum qilishadi. Mana nima qilish kerak ... derazadan chuqur o'ylanib o'tirgandek o'ylang va keyin qiziquvchan nigoh bilan orqaga o'ting yoki iyagingizni qirib tashlang. Ularning deklaratsiyasini qo'shimcha ma'lumot bilan kuzatib borishini kuting.

… Ular tomosha qilmoqda.

8 Comments

  1. 1

    LOL siz haqiqatan ham Dagni mixlab qo'ydingiz 🙂 Siz bizni ishdan bo'shatmoqchimisiz? Bilasizmi, biz ushbu tushunchalarni tushunmayotganimiz va shuning uchun mijozlar bilan o'zaro munosabatda bo'lishimiz kerak. Endi biz ularni qanday qilib puflashning usulini topishimiz kerak birlashtiruvchi bitta ulkan iborani yaratish uchun bu g'alati so'zlar:

    Siz kiritmoqchi bo'lgan funktsiyani funktsional imkoniyatlarni qamrab oladigan va xizmatga yo'naltirilgan arxitektor orqali aloqa qiladigan bir nechta ob'ektlar uchun mavhumlashtirilishini bilasiz.

  2. 5

    Dasturiy ta'minotni ishlab chiquvchi sifatida men ushbu xabarni qadrlayman. Biz hammamiz unchalik yomon emasmiz, ammo never men hech qachon bunday texnob bilan odamlarni bambuk qilmas edim

    Sizga yana bir qancha so'zlarni o'ylab ko'rishga ijozat bering….

Siz nima deb o'ylaysiz?

Ushbu sayt spamni kamaytirish uchun Akismet-dan foydalanadi. Fikringiz ma'lumotlarining qanday ishlashini bilib oling.