Skip to main content

Posts

Inversion of Control และ Dependency Injection

Inversion of Control (IoC) คืออะไร IoC เป็นทฤษฏีที่ว่าด้วย การลดความผูกมัด (dependency) กันในระหว่าง module เพื่อให้ application ของเราแก้ไข (maintain) ต่อเติม (extensible) หรือทดสอบ (test) ได้ง่ายขึ้น ซึ่งเอาจริงๆ IoC เป็นอะไรที่ทำให้เราสับสนและงุนงงมากๆ ว่ามันคืออะไร หลายๆ คนจึงยกให้ว่า IoC คือ Dependency Injection (DI) ซึ่งจริงๆ มันก็ไม่ถูกซะทีเดียว  Dependency คืออะไร Dependency คือการผูกมัดที่เกิดขึ้นในระบบ เมื่อ module นึงมีการเรียกใช้อีก module นึงด้วยการอ้างอิง (reference) ตรงๆ แล้วอะไรที่เรียกว่าการ อ้างอิง (Reference) แบบตรงๆ   อย่างภาพ diagram ด้านบน class LogEngine มีการเรียกใช้ ConsoleLog โดยตรง ซึ่งมองผ่าน diagram อาจจะไม่เห็นภาพลองดู code กัน public class ConsoleLog { public void openLog(){ //do something to open log } public void log(String message){ //do something to log } public void closeLog(){ //do something to close log } } public class LogEngine { private ConsoleLog log; public LogEngine(){

ลองเล่น Lambda Expression ฟีเจอร์เด่นใน Java 8

ประวัติความเป็นมาของ Lambda expression Lambda expression ไม่ใช่สิ่งแปลกใหม่ในวงการ ภาษาโปรแกรม ( Programming Language ) เพราะ lambda มันเป็นแกนหลักของ การเขียนโปรแกรมเชิงฟังก์ชัน ( Functional Programming ) ซึ่งมีอายุมานานมากแล้ว แต่ Java เพิ่งนำเอาคุณสมบัตินี้เอามาใส่ลงในเวอร์ชัน 8 หากจะกล่าวถึงที่มาของ lambda คงต้องไปดูที่ถึงที่มาของ lambda calculus ซึ่งถูกสร้างขึ้นมาตั้งแต่ปี 1930 โดยนักคณิตศาสตร์ชาวอเมริกัน  Alonzo Church  เพื่อใช้ในการแก้โจทย์ปัญหาทางคณิตศาสตร์ที่มีความซับซ้อน ในบางครั้งสมการทางคณิตศาสตร์ที่ยาวไปอาจจะทำให้เกิดความซับซ้อนโดยใช่เหตุ lambda calculus จะทำการยุบบางส่วนของสมการนั้นออกมาเป็นฟังก์ชันย่อยๆ เพื่อทำให้สมการนั้นเข้าใจง่ายขึ้น ต่อมาหลักการของ lambda calculus ได้ถูกนำไปใช้ใน Turing Machine ซึ่งเป็นแบบจำลองในอุดมคติของ Alan Turing  ที่ต่อมากลายเป็นต้นแบบที่ถูกนำไปใช้ในการผลิต  Von Neumann Machine  ซึ่ง Von Neumann Machine ตัวนี้ได้กลายเป็นต้นแบบของคอมพิวเตอร์เครื่องแรกของโลกในเวลาต่อมา ท้ายที่สุดแนวคิดของ lambda calculus ก็ถูกนำมาแปลงเป็นภาษาโปรแกรมท

กรมสรรพากรกำลังพิจารณาจัดเก็บภาษีจากการซื้อขายแอพบน Google Play และ App Store

เนื่องด้วยตลาดสมาร์ทโฟนนั้นเติบโตอย่างรวดเร็ว ทำให้ตลาดแอพพิลเคชันโตตามไปด้วย แถมยังมีเงินสะพัดมากกว่าตลาดสมาร์ทโฟนเสียอีก จึงทำให้กรมสรรพากรกำลังพิจารณาศึกษาแนวทางความเป็นไปได้ในจัดการเก็บภาษีมูลค่าเพิ่ม (VAT) จากการซื้อแอพพิลเคชันบน Google Play และ App Store ทางกรมสรรพากรกล่าวว่าปีที่ผ่านมามูลค่าโดยรวมของตลาดแอพพิลเคชันสูงถึง 15,000 ล้านบาทและในปีนี้น่าจะสูงถึง 20,000 ล้านบาท เนื่องจากไม่มีการเก็บภาษีมูลค่าเพิ่มในส่วนนี้ทำให้รัฐสูญเสียรายได้ไปถึง 1,400 ล้านบาท แต่การจัดเก็บคงยังไม่มีในเร็วๆ นี้ เพราะทางกรมสรรพากรยังต้องศึกษาวิธีการจัดเก็บภาษี เพราะผู้ค้าบางรายไม่ได้ตั้งบริษัทอยู่ประเทศไทย ประเด็นต่อมาถ้ามีการจัดเก็บภาษีแล้วจะทำให้ราคาแอพพิลเคชันบน Google Play และ App Store สูงขึ้นหรือไม่ ผมคิดว่าคงไม่ ภาษีมูลค่าเพิ่มคงจะรวมอยู่ในราคาของแอพพิลเคชันอยู่แล้ว เพียงแต่ตอนนี้ไทยยังไม่ได้เรียกเก็บเท่านั้นเอง ตามรูปด้านบนตรงวงกลมสีแดงจะเห็นว่าตรงราคารวม (Total) ถ้าเป็นของไทยจะไม่มีภาษีมูลค่าเพิ่มรวมอยู่ในนั้น ในกรณีนี้ยังไม่แน่ชัดว่าบริการอื่นๆ บน Google Play และ iTunes Sto

รีวิว Connect 5701Q มือถือ house brand น้องใหม่จาก Mondo

นับจาก WellcoM ซึ่งเป็น house brand รายแรกที่ประสบความสำเร็จกับสมาร์ทโฟน Android ราคาประหยัดจาก WellcoM A88  (เชื่อว่าเป็นมือถือ Android ตัวแรกของใครหลายๆ คน) และยังคงได้รับความสนใจอย่างต่อเนื่องใน WellcoM A99  แต่หลังจากที่โดนซื้อกิจการไปก็หายตัวไปอย่างเงียบๆ จนกระทั่งในปัจจุบันก็มี house brand ผุดขึ้นมาหลายๆ รายรวมไปถึงผู้ให้บริการก็กระโดดเข้ามาเล่นในตลาดนี้ด้วย เช่น True Beyond และ Go Live S จาก True Move H, TriNet phone จาก Dtac โดยในวันนี้เราจะมาพูดถึงน้องใหม่ล่าสุดอย่าง Mondo Mondo (มอนโด) ไม่ถือว่าเป็น house brand สัญชาติไทย เพราะ Mondo อยู่ในเครือของ บริษัท Brightstar ผู้เชี่ยวชาญการจัดจำหน่ายสินค้า IT ทั่วโลก  ส่วนในไทย Brightstar เป็นผู้จัดจำหน่าย (ดิสทริบิวเตอร์) มือถือให้กับ HTC  ซึ่งรวมถึงบริการหลังการขาย แต่ในส่วนของ Mondo นั้นดูเหมือนว่า Brightstar จะให้บริษัท Advice เป็นตัวแทนจัดจำหน่ายและบริการหลังการขาย เนื่องจากผมมีโอกาสได้รับมือถือจาก Mondo  มา 2 เครื่อง Click 4001 และ Connect 5701Q (ได้รับมาจากเพื่อนที่ทำงานอยู่ที่บริษัท โทรศัพท์อะไร? ขอให้ช่วยรีวิว

หลุดมาทั้งยวง ทั้งภาพ ทั้งวิดีโอ ของ LG Nexus 5 เนื่องจากมีคนจงใจลืมไว้ที่บาร์ ?

หลังจากที่มีภาพไส้ใน (ส่วนประกอบ) ของ Nexus 5 หลุดมาจาก FCC (ข่าวเก่า 1 , 2 ) ในวันนี้ก็มีรูปและคลิปหลุดมาอีกระลอก ทางเว็บ 9to5Google ยืนยันมาว่ารูปและวิดีโอ (ข้างล่าง) ที่หลุดในครั้งนี้เป็นของจริง โดยเครื่องเป็นของพนักงานคนนึงที่บังเอิญลืม Nexus 5 เครื่องทดสอบไว้ที่บาร์ โดยคนที่เจอไม่พลาดที่จะตะครุบไว้และถือโอกาสถ่ายรูปและคลิปวิดิโอไว้ (แต่ไม่รู้ว่าพนักงานคนนั้นจะได้มือถือคืนไหม) นอกจากนี้ SPIGEN เคสยี่ห้อดังได้เปิดให้สั่งจองเคส Nexus 5 แล้วผ่าน Amazon โดยสินค้าจะพร้อมส่งวันที่ 30 เดือนตุลาคมนี้ มีความเป็นไปได้ว่า Google น่าจะเปิดขาย Nexus 5 ในช่วงกลางเดือนหรือปลายเดือนตุลาคมนี้ ที่มา 9to5Google ผ่าน Android Central และ Android Police ปล. คุ้นๆ เนอะ มุกภาพหลุดจากพนักงานคนนึงที่ทำมือถือรุ่นใหม่ตกไว้ที่บาร์

Samsung เปิดตัวชิป Exynos 5 Octa รุ่นใหม่ที่ทำงานได้ 8 แกนพร้อมกันซะที

หลังที่ี Samsung เปิดตัวชิป Exynos 5 Octa ที่มี 8 แกน (Core) ไปเมื่อต้นปีที่ผ่านมา ( ข่าวเก่า ) แต่ก็ถูกกระแนะกระแหนว่ามันไม่ใช่ 8 แกนจริงๆ เพราะไม่สามารถทำงานได้ 8 แกนพร้อมๆ กัน จะสลับกันทำงานตามสถาปัตยกรรม big.LITTLE processing ในชิป Exynos 5 Octa จะมีชิปอยู่ 2 ชุด ชุดละ 4 แกน โดยชุดแรกเป็นชิปประสิทธิภาพสูง (ARM Cortex A15 1.8 GHz quad-core) ส่วนชุดที่สองจะเป็นชิปกินไฟต่ำ (ARM Cortex A7 1.2 GHz quad-core) จะสลับการทำงานตามงานหนักและงานเบา เมื่อวาน Samsung ได้เปิดตัวชิป Exynos 5 Octa รุ่นใหม่ที่เพิ่มเทคโนโลยี Heterogeneous Multi-Processing (HMP) เข้ามาครอบระหว่างชิปประสิทธิภาพสูงและชิปกินไฟต่ำ โดย HMP จะเป็นตัวควบคุมและกระจายงานทำให้ชิปประสิทธิภาพสูงและชิปกินไฟต่ำให้สามารถทำงานได้พร้อมกัน (เป็น 8 แกนจริงๆ ซะที) นอกจากนี้ทาง ARM ยังทำวิดีโอ (ด้านบน) มาอธิบายว่าชิป Exynos 5 Octa รุ่นใหม่ทำงานยังไง และแสดงให้เห็นว่ามันทำงานได้ 8 แกนพร้อมกัน โดยในวิดีโอแสดงให้เห็นว่าชิปกินไฟต่ำจะเป็นตัวทำงานอยู่เสมอ จนกระทั่งมีงานหนักๆ เข้ามาชิปประสิทธิภาพสูงก็จะถูกเรียกให้ทำงานไปพร้อม

Kingdom Rush ลดราคาเหลือ $0.99 เตรียมรับภาคใหม่ที่กำลังจะมาเร็วๆ นี้

Kingdom Rush จัดโปรโมชั่นลดราคาเกมส์ลง 50% เพื่อเตรียมรับ Kingdom Rush Frontiers ภาคใหม่ที่กำลังจะลงบน Google Play เร็วๆ นี้ โดยในภาคใหม่จะมีป้อม ศัตรู ฮีโร่ และ Boss โหดๆ เข้ามา ใครที่ยังไม่เคยเล่นสามารถไปลองเล่น Kingdom Rush ภาคแรกได้ที่หน้าเว็บของ Kingdom Rush นอกจากนี้ยังมีวิดีโอแสดงวิธีเล่น ( Walkthrough ) ในแต่ละด่านและแต่ละโหมด เพื่อให้เราสามารถผ่านด่านได้โดยไม่ต้องซื้อของในเกมด้วย (in app purchase)   ที่มา Ironhide Game Studio Fan Page