Labākā kodēšanas prakse, padomi un daudz kas cits Android

Džošua Earles foto vietnē Unsplash

Es esmu izstrādātājs vairāk nekā divus gadus, un veids, kā es kodēju, ir mainījies, mācoties un daloties ar citiem. Šajos pēdējos divos gados esmu redzējis tūkstošiem kodu rindiņu, daži bija pienācīgi, daži bija neglīti un, par laimi, bija arī daži seksīgi. Ja esat programmētājs un varat lasīt tādu kodu kā, piemēram, avīzes lasīšana, nekas to nepārspēj, pat ne karstā meitene, kurai sekojat Instagram. Tātad, iesim iekšā.

Kodēšanas padomi un nevis triki

Nested If’s

Es to ienīstu, es to nopietni daru, jums ir paziņojumi, kuriem ir jāveic vairākas pārbaudes, piemēram, zemāk redzamajā kodā, un tas nonāk tik dziļi, ļoti dziļi, kodējot, kas faktiski ir slikts.

if (transportlīdzeklis! = nulle) {
       if (vehicle.getCar ()! = nulle) {
           if (vehicle.getCar (). getModel ()! = null) {
               int cena = transportlīdzeklis.getCar (). getModel (). getPrice ();
           }

       }
   }

Un lieta ir tāda, ka no tā var izvairīties, jūs pilnīgi to varat. Kā redzat zemāk, viens ir vieglāk lasāms un viegli saprotams.

if (vehicle == null || vehicle.getCar () == null || vehicle.getCar (). getModel () == null) return;

int cena = transportlīdzeklis.getCar (). getModel (). getPrice ();

Atzīmēt noklusējumus

Tagad izlemiet un pasludiniet noklusējumu konstantēs dažādiem primitīviem vai objektiem, kurus jūs parasti izmantojat. Kāpēc? Šeit tas ir paredzēts piem. jums ir cenu (virknes) mainīgais, par kuru jūs dažādās vietās atgriežat nulli, tukšu virkni un “N / A”. Nedariet to. Tas ir noziegums pret cilvēci . Vienkārši izvēlieties savu iecienīto, jo konsekvence ir mazāk pakļauta kļūdām.

Stīgu konkatenācija cilpā

Lieta ir tāda, ka jūs, iespējams, jau zināt dažas no šīm lietām, jo ​​jūs būsiet badass, bet jūs esat tik badass, ka jūs to vienkārši atstāsit savai nākotnei, pieņemot, ka viņš / viņa būs badass un reaģēs uz to, ignorējot faktu ka viņš / viņa varētu būt slinks pakaļa. Es ceru, ka jūs saņemsit f *** g punktu .

Nē
priekš (virknes nosaukums: vārdi) {
    nosaukums + = vārds;
}
Jā
StringBuilder nameBuilder = jauns StringBuilder ();
priekš (virknes nosaukums: vārdi) {
    nameBuilder.append (nosaukums);
}

Nosaukums

Īsie vārdi īslaicīgiem mainīgiem lielumiem un labi un nozīmīgi ilgi dzīvojošiem, jo ​​tie būs ar jums ilgi un ilgi. Viņi ir ģimene.

Piem. cilpas indeksa mainīgais var būt “i”, bet kā klases mainīgajam jābūt “indeksam”

Neobligāti

Java gadījumā tas ir neapšaubāmi labākais risinājums, kas paredzēts miljardu dolāru kļūdai, un tas var izskatīties kā lēts risinājums, taču jums tas ir jāizmanto, ja jums ir daudz naudas.

Atgriezties

Atgrieziet tukšās kolekcijas un sarakstus visur, kur jūs nevarat atgriezt nulles vērtības, pretējā gadījumā miljardi kļūs par triljoniem vai tiks veikti bro, ja esat ziljonārs do.

Kognitīvā sarežģītība

Definīcija: tas ir psiholoģisks raksturojums vai psiholoģisks mainīgais, kas norāda, cik sarežģīts vai vienkāršs ir cilvēka ietvars un uztveres prasmes.

Programmējot metodi ar ligzdotu, ja tāda ir un kas ir lielāks, kognitīvā sarežģītība nozīmē mazāku saprotamību . Tāpēc labāk sadalīt lielās metodes loģiski atdalītos mazākos un izmantot to virs Nested If viltības, lai to samazinātu. Arī statiskā koda analīzes rīks SonarLint to jums aprēķina reāllaikā studijā. Izmantojot sonāru, varat uzzināt, kā jums klājas?

Lambda

Kods ir precīzi un ciļņi jāatstāj brīvs, jo ne katra līkne ir laba. Par laimi, ja viņi ir izveidojuši android gradle> 3.0.0, tas šeit tiek atbalstīts studijas pārbaudē.

Atjaunināt

Vienmēr atjauniniet savus rīkus, prasmes un valodu, es domāju, ka jūsu valodas bērns (dodieties uz kotlinu / plandieties / reaģējiet / hibrīds / dzimtais… Mūsu 13 iemesli, kāpēc !!) citādi tas notiks.

Google ir sadūšojies, un viņi var bloķēt jūsu ***.

Novads

Izmantojiet reģionus, lai nodalītu kodu fragmentus lielās klasēs, piemēram, britisher darīja ar dalīšanas un noteikumu politiku, ļoti efektīvi jautājiet indiāņiem .

// reģions loģiski atdalītā reģiona nozīmīgais nosaukums
dari savu darbu šeit.
// endregion

Sākt

Izveidojiet sākuma metodi, lai sāktu darbību pašā darbībā, lai izvairītos no atkārtošanās, jo, kurš to mīl, un, ja jūs to jau izmantojat, apkopojiet datus, vienkārši neizturiet tūkstoš parametru, kā norādīts zemāk.

publiski statisks, nederīgs sākums (konteksta konteksts, saišķa pakete) {
    Intent starter = jauns nodoms (konteksts, NextActivity.class);
    starter.putExtra (AppConstants.BUNDLE, saišķis);
    context.startActivity (starteris);
}

Maksimālie parametri metodē

Funkcijām nav atļauts izmantot nevienu parametru, taču tas nenozīmē, ka jums tas jādara, tāpat kā GF nenozīmē, ka jums nevar būt cits, bet morāli cilvēki. Ideālā gadījumā parametriem nevajadzētu būt vairāk kā 3–4, un, ja jums nepieciešams vairāk, izmantojiet parametra objekta shēmu.

Formatēšana

Koda formatēšana ir ļoti svarīga lasāmībai. Kodiem, ko ievietojat metodēs, vajadzētu būt vertikāli un horizontāli, ja vien neizmantojat savas metodes atkritumu izvešanai. Studijai ir vertikāla līnija, kuru nevajadzētu šķērsot vai sagatavot nāvei.

nepavelciet robežu.wow man patīk!

Padoms

Džons mežs. Lasāmības kods

Daži labi raksti maniem Android lietotājiem

Pareizais veids, kā ieviest slampāt ekrānu

No lielajiem nerds

Kā kļūt produktīvākam android, izmantojot android studijas spraudņus

Kā padarīt perfektu Singletonu?

Mindorks

Es rakstu šeit, lai jūs varētu mums sekot. Mums ir cilvēki, kas ir pat labāki par mani.

Rīki un spraudņi

Jums nav jāzina viss, jums ir atļauts pieļaut kļūdas, kamēr kāds jūs uzlūko un saka jums bro NĒ !!! Izmēģiniet šos tālāk norādītos rīkus.

SonarLint

Es to iesaku, es to izmantoju un es par to uzzināju no kolēģa, dažreiz viņi var būt noderīgi, jokojot. Tam ir vairākas labākās funkcijas, lai vienkārši skenētu modificētās klases, un tas automātiski kritizēs jūs par jūsu slikto kodu un to, cik neglīts jūs dažreiz varat būt. BTW izziņas sarežģītība, par kuru mēs runājām iepriekš, tas palīdz.

FindBug

Tā ir programma, kas statisko kodu analīzi izmanto, lai java kodā atrastu kļūdas, tāpat kā SonarLint. Lai uzzinātu vairāk par FindBug, pārbaudiet šo. Fellas apvelk monētu vai ko citu, bet izvēlies kādu no šiem instrumentiem.

Zemāk ir visu labāko un lietoto spraudņu saraksts

Kodēšanas principi

CIETS

Tas ir mnemonisks akronīms, kas palīdz noteikt piecus uz objektu orientētus pamatprincipus:

  • Vienotas atbildības princips
  • Atvērts-slēgts princips
  • Liskova aizvietošanas princips
  • Saskarnes atdalīšanas princips
  • Atkarības inversijas princips

Pilnīgai atsauces pārbaudei.

Zēnu skautu noteikums

Definīcija: atstājiet nometnes vietu tīrāku, nekā jūs to atradāt

Sākot ar tēvoča Boba tīro kodu, man patīk šis noteikums, tāpēc, strādājot pie slikta koda, es reaģēju, iztīrošu, samazinu un padarītu to jēgpilnāku un lasāmāku nekā iepriekš. Vienmēr uzturiet apkārtējo tīru, jo prezidents ir pārāk aizņemts, būvējot sienu.

Neatkārtojiet sevi (DRY)

Nekad nekad divreiz nerakstiet vienu un to pašu koda gabalu un padariet to par savu dzelžaino likumu, un cilvēki to stingri aizliedz jūsu valstībā.

Kritiķu princips

Labi, ka tas ir pilnībā izveidots, bet tas ir ļoti loģiski. Pārskatot kodu, kurā norādīti jūsu komandas biedri, neesiet draugi. Esiet viņu ienaidnieks, neļaujiet viņiem pieļaut kļūdas, kuras jums kādreiz vajadzēs notīrīt. Tīrot citu sūdus, jūsu roka būs tikai netīra. Īstenojiet labo praksi kodu pārskatīšanā.

Ir vairāk šādu padomu un paraugprakses, no kurienes tie nāk, vienkārši noklikšķiniet uz šīs saites, ticiet man, ka es neizliktu reklāmas un jūs visi varētu dot savu ieguldījumu, ieteikt un rediģēt savas kļūdas. Jūs būsit labi cilvēki. Es balsošu par.

Turpinājums sekos…

Paldies, ka izlasījāt šo rakstu. Noteikti noklikšķiniet uz , lai ieteiktu šo rakstu, ja tas jums šķita noderīgs. Man tas nozīmē daudz.

Pārbaudiet visus populārākos rakstus vietnē blog.mindorks.com

Pievienosimies arī facebook, twitter, github un linkedin vietnēs.

Klapējiet, dalieties, ja jums patīk, un sekojiet man nākamajam gājienam.