Anúncio
Anúncio

Mais conteúdo relacionado

Anúncio
Anúncio

Web Development Presentation

  1. Web  Development  
  2. Aditya  Narayan   CEO,  TurnToTech    mobile  technology  school  and   incubator     Past:  2  startups,  chief  architect  at   Marvel,  head  of  security  at   Starwood  
  3. Web  Development  
  4. 1989,  CERN   The  web  server   Tim  Berners-­‐Lee   The  browser   HTTP   HTML   URL’s  
  5. Web  Development  
  6. How  does  a  web  applicaOon   work?  
  7. Web  Server   HTML Files, JPGs, business logic 1.  Type     info.cern.ch/TheProject.html   in  the  browser   2.  Browser   connects  to  server   named  info.cern.ch   3.  Browser  asks  for   a  resource  called   TheProject.html   5.  TheProject.html    is  sent  back  to  the   browser   4.  TheProject.html    may  have  links  to  other  websites   Tim Berners-Lee 1989
  8. Domain  name   Server   Browser   Login   Database   Secure   Reliable   Graphics   designer   Should   work  on   mobile   Fast   Future   proof   Cost   AnalyOcs   Data   Developer   Features   Let’s  develop  a     web  app   APIs  
  9. But  where’s  the  recipe?  
  10. Business   InformaOon   Technology  
  11. Focus:  Business  Process  
  12. Admin   HR   Employee  
  13. Admin   AP   Vendors  
  14. Focus:  Business  Process   Outcome:  User  roles,  System  features  and  capabiliOes   Business  
  15. Business   InformaOon   Technology  
  16. Focus:  InformaOon  hierarchy,  NavigaOon  
  17. Focus:  InformaOon  hierarchy,   NavigaOon   Outcome:  Data  model,  Screen   layout   InformaOon  
  18. Business   InformaOon   Technology  
  19. Hardware   System  So[ware   ApplicaOon  So[ware  
  20. Hardware   System  So[ware   ApplicaOon  So[ware  
  21. Backend,  Frontend,  CSS,   HTML,  HTTP,  Framework,   Ruby  on  Rails,  JavaScript,   Database  server,  Web   Server  …  
  22. 1.  User  types     www.webapp.com/index.html       in  the  browser   2.  Browser  connects  to  server  named   www.webapp.com   3.  Browser  asks  for  a  resource  called   index.html   5.  The  final  index.html  is  sent  back  to   the  browser   4.  index.html  may  need  some  data   from  a  database  server  
  23. Browser  (Thin  client)   Downloads  UI  code  from  server  and  runs  it   Web  Server   Contains  business  rules  and  generates  code  for  the   browser     Database  Server   Holds  the  data  
  24. Database  Server   Holds  the  data     Web  Server   Contains  business  rules  and  generates  code  for   the  browser     Browser  (Thin  client)   Downloads  UI  code  from  server  and  runs  it  
  25. Q:  How  are  different  browsers   running  on  different  operaOng   systems  able  to  use  the  same   web  app?   A:  Standards  such  as  HTML  and   HTTP  
  26. Code  that  runs  in  the   browser  is  front-­‐end  code   HTML,  CSS  and  JavaScript   QuesOon:  How  are  different  browsers  able  to  work   with  the  same  web  app?     Answer:  HTML,  CSS  and  JavaScript  happen  to  be   standards  accepted  worldwide  without  excepOon    
  27. HTML  will  let  you  write  UI  code   in  without  wriOng  ‘real’  code   <bufon  type="bufon">Click  Me!</bufon>    
  28. CSS  adds  ‘personality’   <bufon  type="bufon">   Click  Me!   </bufon>   <bufon  type="bufon”     style="  background-­‐color:orange">   Click  Me!   </bufon>  
  29. Alerts     Form  validaOon  
  30. JavaScript   HTML  and  CSS  can  make  your  pages  look   nice     But  they  don’t  make  the  pages  appear   responsive     JavaScript  was  created  as  a  simple   language  to  address  this  need  
  31. Technologies  derived  from   JavaScript   AJAX     jquery     Angular  
  32. And  code  that  doesn’t  run   in  the  browser  is  back-­‐end   code  
  33. Typical  backend  code   runs  on  the  Web   Server  and  the   Database  server  
  34. Typical  backend  code   runs  on  the  Web   Server  and  the   Database  server  
  35. RelaOonal  Database   Typically,  code  wrifen  in  SQL  runs  on   the  database  server   And  SQL  code  is  all  about  performing   CRUD  operaOons  on  Data   Create   Read   Update   Delete  
  36. Typical  backend  code   runs  on  the  Web   Server  and  the   Database  server  
  37. Web  Servers   There  are  several  compeOng   frameworks  for  running  code  on  Web   Servers   JEE,.NET,  Rails,  Django,  PHP  
  38. Web  Servers   There  are  several  compeOng   frameworks  for  running  code  on  Web   Servers   JEE,.NET,  Ruby  on  Rails,  Django,  PHP  
  39. What  is  a   framework?  
  40. Architecture  and   standards  of  the  web   constrain  the  kind  of   code  you  can  write.    
  41. The  general  pafern     receive  request  from  browser   connect  to  database     generate  page   send  page  to  browser  
  42. Imagine  a  web  app  with   1000  pages   receive  request  from  browser   connect  to  database     generate  page   send  page  to  browser  
  43. Frameworks  do  all  the   plumbing   You  write  code  specific  to   your  app    
  44. PlaKorm   Language   Supported  by   JEE   Java   Oracle   .NET   C#   Microso[   Ruby  on  Rails   Ruby   Community   Django   Python   Community   PHP   PHP   Community  
  45. Backend,  Frontend,  CSS,   HTML,  HTTP,  Framework,   Ruby  on  Rails,  JavaScript,   Database  server,  Web   Server  …  
  46. How  about  systems   talking  to  systems?  
  47. XML   JSON   HTTP  
  48. iOS   Android   Mobile  Plaqorms  
  49. Mobile  changes  the     noOon  of  front-­‐end  and     backend  
  50. Just  like  web,  mobile   plaqorms  have  their   frameworks  
  51. A  mobile  app  is  self   contained   server  only  provides  data,   not  code  
  52. XML   JSON   HTTP   ObjecOve-­‐C   Java   {Watching=7,  Buying=23,  Selling=5}  
  53. How  much  so[ware  do   we  need  to  build?       How  much  can  we   license?  
  54. Open  Source  
  55. Development  
  56. Agile   Waterfall  
  57. TDD  
  58. Deployment  
  59. Hosted   Public  Cloud   Private  Cloud  
  60. System   Management  
  61. A  server  must  be   always  on  
  62. New  Relic,  Pingdom  
  63. AnalyOcs  
  64. Google  AnalyOcs  
  65. Security  and  Privacy  
  66. Over  the  wire   At  rest   EncrypOon  
  67. SSL Variety  of  standards  
  68. OAuth  
  69. New  Developments  
  70. Web  Sockets  
  71. HTML5  
  72. MongoDB   Neo4j   Cassandra  
  73. Web  Sockets   HTML5   NoSQL  
  74. The  web  relies  on   open  standards  
Anúncio