cleancode   351

« earlier    

The 6 Most Common Types of Logic in Large Applications [with Examples] | Khalil Stemmler
In this article, you'll learn about the Clean Architecture, why we should separate the concerns of large applications into layers, the 6 most common types of application logic, and which layer they belong to.
cleancode  layered  architecture  software  application  logic 
8 weeks ago by gilberto5757
5 Ways Containers Benefit Developers
When you start to break down clean code principles, what counts as clean code to one person may not to another.
cleancode  bestpractice  definition 
10 weeks ago by gilberto5757
clean-code-typescript | TypeScriptの為のクリーンコード
"Robert C. Martinの書籍 Clean CodeをTypeScriptに対応させたソフトウェア工学の原則です。 翻訳書籍(amazonへのリンク) これはスタイルガイドではありません。 TypeScriptで可読性が高く、再利用可能であり、リファクタブルなソフトウェアを生産するためのガイドラインです。"
typescript  architecture  cleancode 
10 weeks ago by junya
Clean Code by Robert C. Martin Summary
General rules

Follow standard conventions.
Keep it simple stupid. Simpler is always better. Reduce complexity as much as possible.
Boy scout rule. Leave the campground cleaner than you found it.
Always find root cause. Always look for the root cause of a problem.
Design rules

Keep configurable data at high levels.
Prefer polymorphism to if/else or switch/case.
Separate multi-threading code.
Prevent over-configurability.
Use dependency injection.
Follow Law of Demeter. A class should know only its direct dependencies.
Understandability tips

Be consistent. If you do something a certain way, do all similar things in the same way.
Use explanatory variables.
Encapsulate boundary conditions. Boundary conditions are hard to keep track of. Put the processing for them in one place.
Prefer dedicated value objects to primitive type.
Avoid logical dependency. Don't write methods which works correctly depending on something else in the same class.
Avoid negative conditionals.
Names rules

Choose descriptive and unambiguous names.
Make meaningful distinction.
Use pronounceable names.
Use searchable names.
Replace magic numbers with named constants.
Avoid encodings. Don't append prefixes or type information.
Functions rules

Do one thing.
Use descriptive names.
Prefer fewer arguments.
Have no side effects.
Don't use flag arguments. Split method into several independent methods that can be called from the client without the flag.
Comments rules

Always try to explain yourself in code.
Don't be redundant.
Don't add obvious noise.
Don't use closing brace comments.
Don't comment out code. Just remove.
Use as explanation of intent.
Use as clarification of code.
Use as warning of consequences.
Source code structure

Separate concepts vertically.
Related code should appear vertically dense.
Declare variables close to their usage.
Dependent functions should be close.
Similar functions should be close.
Place functions in the downward direction.
Keep lines short.
Don't use horizontal alignment.
Use white space to associate related things and disassociate weakly related.
Don't break indentation.
Objects and data structures

Hide internal structure.
Prefer data structures.
Avoid hybrids structures (half object and half data).
Should be small.
Do one thing.
Small number of instance variables.
Base class should know nothing about their derivatives.
Better to have many functions than to pass some code into a function to select a behavior.
Prefer non-static methods to static methods.

One assert per test.
Code smells

Rigidity. The software is difficult to change. A small change causes a cascade of subsequent changes.
Fragility. The software breaks in many places due to a single change.
Immobility. You cannot reuse parts of the code in other projects because of involved risks and high effort.
Needless Complexity.
Needless Repetition.
Opacity. The code is hard to understand.
cleancode  software  softwaredesign 
july 2019 by northwestyam
Clean Go Code
A resource (and eventually a reference) for the Go community to help developers write cleaner code.
go  golang  cleancode  bestpractices  codereviews  guides 
june 2019 by dlkinney
Contribute to Pungyeon/clean-go development by creating an account on GitHub.
golang  cleancode 
june 2019 by cychong47
Clean Node.js Architecture | Enterprise Node.js TypeScript | Khalil Stemmler | Advanced TypeScript & Node.js best practices for large-scale applications
In this article, we'll look at the various different versions of the "clean architecture", simplify it, and understand how we can use it to write more flexible Node.js code with TypeScript.
software  enterprise  architecture  unclebob  cleancode  nodejs  article 
june 2019 by gilberto5757
Clean Code Poster - free download
Freelance graphic and visual designer. Love designing logos, branding, UI and 3D objects
Freelance graphic and visual designer. Love designing logos, branding, UI and 3D objects
styleguide  bestpractices  cleancode  code  reference  naming   
april 2019 by michaelfox
How clean-architecture solved so many of our Serverless problems
Learnings of how clean architecture still applies to the brave new Serverless world.
cleancode  unclebob  serverless  microservice 
april 2019 by gilberto5757

« earlier    

related tags

*****  2017  abap  abstraction  agile  amusement  analysis  android  androiddev  angularjs  application  architecture  article  async  await  bestpractice  bestpractices  book  books  c#  c++  cheatsheet  checkthis  clean  cleanabap  cmake  code-smell  code  codereviews  coding  codingdojo  complexity  concurrency  context  cost  costs  craftmanship  criticism  csharp  dagger  ddd  definition  dependencies  design-patterns  design  designpattern  destructuring  dev  development  devhelp  devoxx  django  documentation  droidcon  dry  ecmascript6  enterprise  entityframework  es6  espresso  example  extension  fanatism  formatting  fp  froscon  github  glide  go  golang  good-practices  good  goodpractices  gson  gtd  guide  guides  hexagonal  howto  important  inheritance  ios  java  javascript  js  kotlin  layered  learning  legacy  logic  maintainability  maintenance  marshmallow  microservice  minsk  mocking  mockito  modularize  mvc  mvp  mvvm  naming  nodejs  ocp  okhttp  oop  opinion  pattern  permission  php  practice  practices  process  programming  promises  python  pythonoddities  quality  react.js  readability  refactoring  reference  requirements  retrofit  review  robertmartin  robolectric  ruby  rxjava  sample  sanfrancisco  sap  serverless  software-engineering  software  softwarecrafting  softwarecraftsmanship  softwaredesign  softwaredevelopment  softwerkskammerkoeln  solid  stream  style  styleguide  summary  tdd  techicaldebt  technicaldebt  testing  timber  tip  tips  transformation  tutorials  typescript  udemy  unclebob  unstable  video  videos  violation  viper  visualization  web  youtube   

Copy this bookmark: