Бағдарламалаудың үлкен сөздері немесе сөз тіркестері

Қалта қорғанышыКейбір ерекше бағдарламашылармен жұмыс істей отырып, мен сәулетшілермен, кездесулерде және менеджерлермен немесе олардың клиенттерімен қорқыту үшін кейбір үлкен сөздерді немесе сөз тіркестерін тастағанды ​​ұнататын жетекшілермен және әзірлеушілермен кездесемін.

Бұл бағдарламашылар ұнататын нәрселердің бірі. Міне, олардың ондығы өте қарапайым сипаттамамен (әрине, олардың терминологиясын өліммен бұзған кезде, барлық жерде әзірлеушілердің ашуы туындайды) менің қарапайым автомобиль метафораларым):

  1. Абстракция - бұл күрделі процесті немесе функцияны қабылдау және оны қисынды түрде бұзу ... иерархия бойынша (A В-ға, B C-ге, т.б.) немесе ерекшеліктері немесе функциялары бойынша (түсі, өлшемі, салмағы және т.б.). Абстракция функционалдылықты логикалық түрде ұйымдастыру арқылы объектіге бағытталған бағдарламалауды жеңілдетеді. Автокөлігімді құрастыру үшін жақтауды, қозғалтқышты және корпусты бөлек жасаймын.
  2. Қашу - бұл жүйеде кейбір ескі кодтар қалуы мүмкін, бірақ оларды тоқтату қажет дегенді білдіреді. Код ескіргенде, бағдарламашылар барлық сілтемелер ескіге кеткенше, ол жойылуы керек болғанша, кодқа сілтеме жасамайды немесе жаңа кодты қолданбайды. Кейде, егер бұл функция жойылып бара жатса, сіз оны қолданушыларға бұл туралы айтып ескерту жасай отырып, оны біраз уақыт сақтай аласыз. Мен жаңа сымдармен жаңа стерео жүйені аламын, бірақ ескі сымдарды қалдырамын және оны қолданбаймын.
  3. Инкапсуляция - бұл функция жүйенің басқа бөліктеріне жете алмаған кезде сіздің ата-анаңызда бағдарламалау функцияларын ұйымдастыру процесі. Егер сізде миллиондаған функциялар бар болса, оларды тиімді ұйымдастырып, оларды ғаламдық деңгейде қол жетімді емес, өздері жұмыс жасайтын салаларда жұмыс жасағыңыз келеді. Мен қозғалтқыштың тірек механикасын қозғалтқыш бөліміне орналастырдым ... Май сүзгісін артқы орындыққа қоймаймын.
  4. Мұрагерлік - бұл жалпы кодтың басқа бөлігінің (кластың) қасиеттерін оны қайта жазбай жаңа функционалдылық үшін қайта пайдалану үшін қабылдау мүмкіндігі. Мұрагерлік - бұл объектіге бағытталған тағы бір жақсы даму тәжірибесі. Менің автокресломда баланы немесе ересектерді - оның ішінде кім отырса, соны пайдалануға болады.
  5. Қалыптастыру - бұл сілтемелерді құру арқылы мәліметтер қорында деректерді тиімді пайдалануды ұйымдастыру әдісі. Маған мысал болар, егер мен бағдаршамдарды күні бойы жазсам ... қызыл, сары және жасыл. Әр жазбаны қызыл, сары және жасыл түстермен жазудың орнына - мен 1, 2 және 3 деп жазып, содан кейін 1 = қызыл, 2 = сары және 3 = жасыл болатын басқа кесте жасаймын. Осылайша мен қызыл, сары және жасыл түстерді тек бір рет жазамын. Менің машинамның есіктерінің әрқайсысында бірдей есіктің сабы бар. 4 түрлі тұтқаларға қарағанда 4 түрлі жерде қолданылатын бір тұтқа.
  6. Нысанға бағытталған - қазіргі заманғы бағдарламалау тілдерінде бұл белгілі бір кодты функционалдылығы бойынша бөліктерге жазуға, содан кейін оларды қайта пайдалануға мүмкіндік беретін жобалау әдісі. Мысалы, егер мен дұрыс салынған электрондық пошта мекен-жайын тексергім келсе. Мен функцияны бір рет құра аламын, содан кейін оны өзімнің қосымшамның кез-келген жерінде қолдана аламын. Менің көлігімде сол немесе басқа өндірушілердің басқа автомобильдерде қолдана алатын 18 дөңгелегі бар.
  7. Полиморфизм - Мұны түсіндіру қиын, бірақ негізінен бұл басқа жағдайларға динамикалық қолдануға болатын кодты жасау мүмкіндігі. Басқаша айтқанда, ол сілтеме жасау арқылы бірегей және динамикалық функционалдылықты мұра ете алады. Бұл дамудың өте тиімді құралы. Мен автомобильді электр розеткасымен телефонды зарядтау үшін немесе шина сорғыма шырын беру үшін қолдана аламын.
  8. Рекурсия - бұл әдіс өзі сілтеме жасайтын әдіс. Кейде бұл тиімді және қасақана, бірақ басқа жағдайларда сіздің қосымшаларыңыз бақылаусыз қалуы мүмкін. Мен машинамдағы стерео туралы іздеуді бассам, ол радиостанциялар арқылы өтеді. Ол ешқашан аяқталмайды, тек жұмысын жалғастыра береді.
  9. Рефакторинг - бұл кодты сақтау процедурасы, оны қадағалауды жеңілдету немесе оны жақсы ұйымдастыру үшін, бірақ қосымша функционалдылықты қосу міндетті емес. Мен қозғалтқышты қалпына келтіремін.
  10. Серверге бағдарланған сәулет (SOA) - объектіге бағытталған бағдарламалауды қабылдау және оны белгілі бір функцияларды орындайтын тұтас жүйелер болуы мүмкін үлкен жүйелерге қолдану. Сізде жеткізілім жүйесімен сөйлесетін электронды сауда жүйесімен сөйлесетін клиенттермен қарым-қатынасты басқару жүйесі болуы мүмкін. Мен заттарды бір жерден екінші жерге жіберу үшін машинаммен тіркеме сүйреймін. Оларды қосу үшін тіркеме ілгішті (XML) қолданамын.

Менің метафораларым әрқашан мақсатқа сай келе бермейтінін түсінемін. Олар аз да болса көмектесті деп үміттенемін!

Әзірлеушімен келесі кездесуде осы сөздерді естігенде бірнеше кеңес беріңіз ... орнына қайта жүгірмеңіз және оларды іздеңіз Уикипедия, олар қарап отырады. Қақпаңыз, олар шабуылдайды. Міне, не істеу керек ... терең ойға батқандай терезеден ойға шомып, сосын ізденімпаз көзқараспен артқа қараңдар немесе иектеріңді тырнап тастаңдар. Олардың декларациясын қосымша ақпаратпен күтетінін күтіңіз.

… Олар қарап жатыр.

8 Пікірлер

  1. 1

    LOL сіз оны Даг шегелеп тастадыңыз 🙂 Сіз бізді бизнестен аластатқыңыз келе ме? Сіз бұл ұғымдарды түсінбейтіндіктен, біз клиенттермен тіл табыса алмайтындығымызды жақсы білесіз. Енді біз оларды қалай өткізуге болатынын анықтаймыз біріктіру мынадай алып сөз тіркестерін жасауы мүмкін:

    Сіз енгізгіңіз келетін функцияны функционалдылықты жинақтайтын және сервистік архитектура арқылы байланысатын бірнеше объектілерге абстракциялауға болатындығын жақсы білесіз.

  2. 5

    Бағдарламалық жасақтама жасаушы болғандықтан, мен бұл жазбаны бағалай аламын. Біз бәрібір жаман емеспіз 😉 Мен ешқашан мұндай техно-пусты бар адамдарды бамбукпен айналыспас едім 🙂

    Сізге тағы бірнеше сөз ойлап көруге рұқсат етіңіз….

Сен не ойлайсың?

Бұл сайт спамның төмендеуі үшін Akismet пайдаланады. Деректеріңіздің қалай өңделетінін біліңіз.