This blog moved to medium->https://medium.com/@cocoamaemae

Sunday, February 11, 2018

Key points of objected oriented design

Brief
Recap key points when using object oriented design and writing codes.


Complete constructor pattern

  • Configure essential information when creating constructor 
  • Not specify arguments of methods as possible as it can. 
  • If member variables are considerably increased, extract new classes.

First class correction
  • Recap related methods or logics and fields to one class 

Tuesday, February 6, 2018

Regarding normalization

What's normalization?
Divide RDB tables to satisfy functional dependencies.

Why normalization is necessary?
Merits

  • Possible to avoid the inconsistency when updating tables
  • To understand meanings of respective tables easier

Demerits

  • Increase JOIN and reduce SQL performance since the number of tables increase

Which normalization should be done?
Basically, it should always be done untill third normalization.




Sunday, February 4, 2018

The difference with web server and application server

Brief

Clarify about the difference with web server and application server.

Web server

web servers are just to handle http requests and return static contents(HTML, CSS, JavaScript) if there are no dynamic processes.
If there are dynamic processes, execute programs like PHP or Perl by using any modules or pass requests to an application server.

e.g.
Apache, Nginx, IIS


Application Server

application servers handle requests from web servers and run programs like Ruby or Java, and response to web servers.

e.g.
Ruby on rails environment
Passenger, Unicorn

Java Servlet environment
Tomcat(*), Glass Fish
(*)Tomcat has a function as web server, too.

Front End Development Tools

TaskRunner Tool executing multiple tasks by only one execution. Tasks are like CSS preprocessor, Transpire, Module Bundler, etc... e.g. ...