ปัจจุบันในทีมมี 3 คน มี skill php css html5 jquery ครับ กำลังทำโปรเจคเกี่ยวกับ ecommerce ที่มีทั้ง web app และ mobile app พวกเรากำลังจะเลือก framework เป็นเครื่องมือในการทำน่ะครับ ตอนนี้เลยได้แต่ coding php กันเพียวเพื่อเทสฟังค์ชั่นกันไปก่อนvที่เลือกๆกันไว้ก็คือ

client จะใช้ bootstrap + AngularJS

server จะใช้ Node / express

db ใช้ mysql หรือ posgres

คือใน team ยังไม่มีคนเคยใช้ framework จริงๆจังๆเลยครับ เลยอยากจะถามข้อดีข้อเสีย หรือ แนะนำให้หน่อยครับ จะได้เริ่มศึกษาและทำโปรเจคไปพร้อมๆกันครับ

(กำลังงงๆอยู่ถ้า laravel จะใช้เขียนในส่วน server หรือ client ครับ และ db ตอนแรกว่าจะลอง mongoDB แต่อ่านๆดูไม่เหมาะกับงานพวกค้องเก็บ transaction ใช่มั้ยครับ)

Hiring! บริษัทที่น่าสนใจ

Carmen Software company cover
Carmen Software
Hotel Financial Solutions
Next Innovation (Thailand) Co., Ltd. company cover
Next Innovation (Thailand) Co., Ltd.
We are web design with consulting & engineering services driven the future stronger and flexibility.
KKP Dime company cover
KKP Dime
KKP Dime บริษัทในเครือเกียรตินาคินภัทร
Kiatnakin Phatra Financial Group company cover
Kiatnakin Phatra Financial Group
Financial Service
Fastwork Technologies company cover
Fastwork Technologies
Fastwork.co เว็บไซต์ที่รวบรวม ฟรีแลนซ์ มืออาชีพจากหลากหลายสายงานไว้ในที่เดียวกัน
Thoughtworks Thailand company cover
Thoughtworks Thailand
Thoughtworks เป็นบริษัทที่ปรึกษาด้านเทคโนโยลีระดับโลกที่คว้า Great Place to Work 3 ปีซ้อน
Iron Software company cover
Iron Software
Iron Software is an American company providing a suite of .NET libraries by engineer for engineers.
CLEVERSE company cover
CLEVERSE
Cleverse is a Venture Builder. Our team builds several tech companies.
Nipa Cloud company cover
Nipa Cloud
#1 OpenStack cloud provider in Thailand with our own data center and software platform.
Bangmod Enterprise company cover
Bangmod Enterprise
The leader in Cloud Server and Hosting in Thailand.
CIMB THAI Bank company cover
CIMB THAI Bank
MOVING FORWARD WITH YOU - CIMB is the leading ASEAN Bank
Bangkok Bank company cover
Bangkok Bank
Bangkok Bank is one of Southeast Asia's largest regional banks, a market leader in business banking
MuvMi (Urban Mobility Tech Co.,Ltd.) company cover
MuvMi (Urban Mobility Tech Co.,Ltd.)
Shape the future of urban mobility towards affordable, clean, and safe solutions
T.N. Digital Solution Co., Ltd. company cover
T.N. Digital Solution Co., Ltd.
TNDS has been involving in every first move of banking’s major digital transformation.
KBTG - KASIKORN Business-Technology Group company cover
KBTG - KASIKORN Business-Technology Group
KBTG - "The Technology Company for Digital Business Innovation"
Siam Commercial Bank Public Company Limited company cover
Siam Commercial Bank Public Company Limited
"Let's start a brighter career future together"
Icon Framework co.,Ltd. company cover
Icon Framework co.,Ltd.
Global Standard Platform for Real Estate แพลตฟอร์มสำหรับธุรกิจอสังหาริมทรัพย์ครบวงจร มาตรฐานระดับโลก
REFINITIV company cover
REFINITIV
The Financial and Risk business of Thomson Reuters is now Refinitiv
H LAB company cover
H LAB
Re-engineering healthcare systems through intelligent platforms and system design.
The Gang Technology Co., Ltd. company cover
The Gang Technology Co., Ltd.
We're a Digital Agency that helps our customers transform their business into digital with ease.
LTMH company cover
LTMH
LTMH มุ่งเน้นการพัฒนาผลิตภัณฑ์ที่สามารถช่วยพันธมิตรของเราให้บรรลุเป้าหมาย
Seven Peaks company cover
Seven Peaks
We Drive Digital Transformation
Wisesight (Thailand) Co., Ltd. company cover
Wisesight (Thailand) Co., Ltd.
The Best Choice For Handling Social Media · High Expertise in Social Data · Most Advanced and Secure
MOLOG Tech company cover
MOLOG Tech
We are Modern Logistic Platform, Specialize in WMS, OMS and TMS.
Data Wow Co.,Ltd company cover
Data Wow Co.,Ltd
We enable our clients to realize increased productivity by solving their most complex issues by Data
LINE Company Thailand company cover
LINE Company Thailand
LINE, the world's hottest mobile messaging platform, offers free text and voice messaging + Call
LINE MAN Wongnai company cover
LINE MAN Wongnai
Join our journey to becoming No.1 food platform in Thailand

ถ้าเลือกได้แล้วก็จะเรียนรู้กันใหม่เลยครับ จะได้เพิ่ม skill กันด้วยครับ

ขอถามเพิ่มเติมครับ

  • laravel กับ node นี่นอกจากภาษามีข้อดีข้อเสียต่างกันยังไงบ้างครับ

  • client นอกจาก angular มีตัวไหนแนะนำมั่ยครับ

Lavarel นี่เป็น framework บน PHP ครับ ส่วน Node JS นี่ภาษาใหม่เลยครับ (ที่เขียนเหมือน JS)
นอกจาก AngularJS แล้วก็มี jQuery ที่ใช้ได้ครับ

ถ้าจะเรียนรู้ภาษาใหม่ไปด้วยนี่ผมแนะนำ framework ฝั่ง python ที่ชื่อว่า Django เลยครับ

  • ต่อกับ postgres สบาย
  • ตัวเสริมที่ชื่อ django-rest-framework เอาไว้พวก REST api ให้ง่ายขึ้น
  • หนังสือชื่อ django two scoops อธิบาย framework ตัวนี้ไว้ดีมาก

db แนะนำ mongodb ครับ ถ้าจะใช้ server node.js

ผมก็พึ่งมาหัดใช้ mongodb บางทีเราต้องลีมวิธีออกแบบ ตาราง มาเป็นการออกแบบในการใช้ เอกสาร (document)
ผมใช้
Material Angular + Angular <-> Express, Node.js <-> Mongodb

ไม่คิดอะไรมาก server ก็ Ruby on Rails จบในตัวเอง
ฝั่ง mobile client ก็ใช้ cordova (phonegap) นี่แหละ ง่ายดี
ส่วน database นี่ก็ postgresql เลย

เห็นด้วยครับที่ว่า Learning Curve สูง ผมว่าส่วนนึงก็มาจากตัวภาษา Ruby นี่แหละครับ สมัยที่เริ่มเล่นใหม่ๆ เรียกได้ว่ามึนเลย แต่พอเข้าถึงธรรมชาติของมันได้ ทีนี้ล่ะ หยุดไม่อยู่เลยทีเดียว ยิ่งเขียนยิ่งมัน (ฮา)

ถ้ามีระบบการเงินเข้ามาด้วย ผมแนะนำให้คุณเลิกใช้ PHP เถอะ ด้วยความหวังดี เพราะบริษัทที่ผมทำเงินรั่วไปเยอะพอสมควรเลย เว้นแต่ว่าคุณมีทีมอุดเหมือน Facebook ก็ไม่ว่าอะไร

ถ้าผมเลือกได้คงเอา .NET ดีกว่า เวลาเปลี่ยน Framework Version ทีก็ไม่ต้องมาไล่แก้ยิกๆเหมือนหมาไล่งับหางตัวเอง

อ้าว ตกลงว่าภาษามันไม่ดีหรือโค้ตเขียนไม่ดีกันแน่ ผมว่าเขียนกันไม่ดีเองมากกว่านะ ส่วน .net นี้เปลียน entity-framework เวอร์ชั่นใหม่ทีก็เสียวๆกันทุกที

เขียนไม่ดี? คือไล่ตาม PHP แล้วเวอร์ชันถัดไปพี่แกล้มกระดานใหม่เลย อันนี้เรียกว่าเขียนไม่ดีหรือครับ? คือแค่ minor change นี่ผมไฝว้กับ Programmer หลายทีแล้วว่าให้รีบอัพ ไม่งั้นโดนเจาะ (ป้องกัน XSS, Injection เท่าที่ทำได้) แต่สุดท้ายโค้ดรันไม่ได้ ก็ต้องอยู่ที่เดิม

ผมอยากรู้จังว่ามีธนาคารไทยเจ้าไหนใช้ PHP เป็นตัวเชื่อมกับ Internet Banking ของตัวเองครับ?

ยอมรับเรื่อง backward compatible ของ PHP เข้าขั้นเอาแต่ใจจริงๆ แต่มันต้องมีคนมาค่อย maintain code กันอยู่แล้ว ไม่งั้นมันก็ต้องมีปัญหาสักวันอยู่ดี

ถ้าเป็น Enterprise ขนาดใหญ่พูดง่ายครับ คนเพียบ คนแก้ก็รับงานแก้ไป คนเขียนงานใหม่ก็ทำไป

แต่พอมาเป็น Startup ยืนยันว่างานไม่เดินครับ แก้กันทั้งบริษัทเลย เสียโอกาสทางธุรกิจก็ไม่น้อยด้วย

เดี๋ยวนะครับ ล้มกระดานใหม่นี่หมายถึงตัว PHP เองหรือ framework ที่คุณใช้ฮะ?

ช่วง 5.4 มา 5.6 นี่ผม upgrade มาเป็นสิบๆ เว็บแล้ว ไม่มีปัญหาเลยนะครับ ขนาด up ข้ามเลยด้วยนะ

แล้วก็ ตั้งแต่ php 5.2 นี่ผมไม่เคยเจอ exploit ที่เกิดจากตัว php core เลยนะครับ (เจอแต่บั๊กที่ทำให้ php crash บ้างนิดๆ หน่อยๆ) ที่โดนเจาะกันก็มีแต่เขียน code ไม่ดีจนมีช่องโหว่เองทั้งนั้น

ได้ทำ unit-testing แต่แรกหรือเปล่าครับ?

นอกนั้นเป็นเรื่อง design pattern ด้วยนะครับ ออกแบบโค้ดไว้ดีแต่แรกหรือเปล่า เคสพวกนี้ถ้าออกแบบไม่ดีแก้โค้ดแหลกรานเพราะเขียนแบบ WET จนเป็นขยะเปียกไปเลย

ปล. โปรเจ็คใหญ่ๆ ใช้ PHP กับการเงินมีนะครับ แต่ไม่มีใครออกมาพูด เพราะเป็นเรื่อง Security ต่อให้ภาษาดี framework ดี แต่คนเขียนไม่เป๊ะ (ไม่มีใครเป๊ะ ผมก็ไม่เป๊ะ) ถ้ารู้ภาษา รู้ framework ก็เดาแนวการเขียนได้ ทำให้คนไม่ออกมาพูดเลยครับ แต่มีใช้แน่นอน
ปล2. php มีข้อเสียจริงๆ เรื่องทำ force return type ไม่ได้ กับ type hinting มีจำกัดมาก แต่ PHP7 จะแก้ตรงนี้ล่ะ

.NET พอเปลี่ยน version ไม่ต้องไล่แก้จริงหรอครับ เท่าที่เห็นมานี่ผมไม่รู้สึกอย่างนั้นนะ

ยกเว้นจะนับว่าของที่ใช้งานมันยังไม่มี Update เพิ่ม

จริงๆ ระบบการเงินตามปกติต้องมีทีม Maintenance นี่ครับ ไม่งั้นลูกค้าจะไว้ใจได้ยังไงเวลามีปัญหา?

  • Server ผมใช้ PHP+Phalcon Framework + Xcache เร็วดี ไม่กินเมม แต่ว่าต้องมี Test Server ครับ
  • Client ใช้ jQuery + jQuery UI + CSS
  • Database ใช้ mySQL นี่แหละครับง่าย Tool เยอะดีเอกสารเพียบ

ตัว Phalcon น่าสนใจนะครับ มีแต่คนแนะนำว่า ถ้าเน้น performance ตัวนี้เลย ส่วน laravel จบไว หาคนต่อง่ายกว่า แต่บวมและ performance ไม่ค่อยโอเคเท่าไร

  • Phalcon พยายามเขียนเป็นแบบ MVC
  • ติดต่อ Database ให้เรียกตามแบบที่ Falcon ให้มามันกันเรื่อง SQL Injection ให้ในระดับนึง
  • การรับส่งข้อมูลให้ใช้ Routing
  • ก่อน Implement ให้ Test ให้ดีเนื่องจาก Phalcon เป็น Extension ของ PHP
    ถ้า Hang ระวัง Apache มันจะดาวน์ แต่เรื่อง Performance ก็ระวังมันจะเร็ว อิอิ