ผลงานตำราซึ่งแต่งโดยคณาจารย์ผู้ทรงคุณวุฒิจากภาควิชาวิศวกรรมคอมพิวเตอร์
ตำราบางเล่มสามารถดาวน์โหลดได้ที่นี่

Cover-Java เริ่มเรียนเขียนโปรแกรม ฉบับวาจาจาวา
โดย รศ.ดร.สมชาย ประสิทธิจูตระกูลนำเสนอหลักการเขียนโปรแกรมด้วยภาษาจาวาสำหรับผู้เริ่มเรียนเขียนโปรแกรม โดยแสดงแนวคิดและรูปแบบของชุดคำสั่งที่พบบ่อย ตามด้วยตัวอย่างโปรแกรมที่ทำงานได้จริงจำนวนมาก เช่น โปรแกรมประมวลผลจำนวน โปรแกรมประมวลผลภาพนิ่งและภาพเคลื่อนไหว โปรแกรมประมวลผลข้อความจากแฟ้มข้อมูลและจากเว็บเพจในอินเทอร์เน็ต เป็นต้น เพื่อให้ผู้อ่านเห็นความหลากหลายในการสร้างโปรแกรมคอมพิวเตอร์เพื่อใช้งานในด้านต่างๆ ทั้งนี้ หนังสือเล่มนี้ ยังเป็นตำราหลักสำหรับการเรียนวิชา 2110101 การทำโปรแกรมคอมพิวเตอร์ ซึ่งเป็นวิชาบังคับสำหรับนิสิตชั้นปีที่ 1 คณะวิศวกรรมศาสตร์ จุฬาลงกรณ์มหาวิทยาลัย ในทุกสาขาวิชาอีกด้วยอนึ่ง ในหนังสือเล่มนี้ ผู้อ่านยังสามารถชมภาพยนตร์จากแผ่นซีดีรอมที่บันทึกจากหน้าจอคอมพิวเตอร์ระหว่างการเขียนโปรแกรมที่ปรากฏในหนังสือ พร้อมเสียงบรรยายประกอบ จำนวน 70 เรื่อง ประมาณ 19 ชั่วโมง เพื่อให้เห็นกระบวนการเขียนโปรแกรมซึ่งมักเป็นวงจรของการเขียน ทดสอบ แก้ไข นอกจากนี้ ซีดีรอมนี้ยังบรรจุซอฟต์แวร์ JLab ที่อำนวยความสะดวกให้ผู้อ่านพร้อมเริ่มเรียนเขียนโปรแกรมทันที
   
cover-lab101 การเขียนโปรแกรม แบบฝึกปฏิบัติ : ฉบับวาจาจาวา
โดย รศ.ดร.สมชาย ประสิทธิจูตระกูลการเขียนโปรแกรมเป็นความสามารถที่ต้องลงมือฝึกปฏิบัติด้วยตนเอง เหมือนกับทักษะอื่น ๆ ทางวิศวกรรมที่จำเป็นต้องฝึกๆๆ จึงจะเห็นผล ไม่สามารถได้มาด้วยการอ่าน ด้วยเหตุนี้ แบบฝึกปฏิบัติการเขียนโปรแกรมเล่มนี้ถูกจัดทำขึ้น เพื่อให้นิสิตได้ศึกษาเนื้อหาและเตรียมตัวก่อนเข้าเขียนโปรแกรมในห้องปฏิบัติการที่จัดขึ้นเป็นกิจกรรมเสริมการเรียนรายสัปดาห์ โดยแบบฝึกปฏิบัติการชุดต่าง ๆ มีตัวตรวจที่ใช้กับซอฟต์แวร์ JLab เพื่อตรวจสอบความถูกต้องของโปรแกรมอย่างอัตโนมัติ นิสิตจะได้ฝึกเขียน แก้ปัญหา หาที่ผิด ตรวจสอบความถูกต้องของโปรแกรมที่ได้พัฒนาขึ้น นอกจากนี้ แบบฝึกปฏิบัติการเล่มนี้ยังมีแบบฝึกหัดเพิ่มเติมให้นิสิตได้ฝึกทำโจทย์เสริมอื่น ๆ
   
Cover-DS โครงสร้างข้อมูล ฉบับวาจาจาวา
โดย รศ.ดร.สมชาย ประสิทธิจูตระกูลโครงสร้างข้อมูลเป็นหนึ่งในองค์ความรู้พื้นฐานของการศึกษาทางวิทยาการคอมพิวเตอร์ วิศวกรรมคอมพิวเตอร์ และอื่น ๆ อีกหลากหลายสาขา ที่ว่าด้วยการจัดเก็บข้อมูลอย่างมีระเบียบ และการจัดการข้อมูลอย่างมีระบบ เพื่อให้ตรงตามความต้องการของผู้ใช้งานอย่างมีประสิทธิภาพหนังสือเล่มนี้นำเสนอโครงสร้างข้อมูลประเภทต่าง ๆ พร้อมตัวอย่างการใช้งานมากมายหลากหลายรูปแบบ อาทิเช่น การค้นข้อมูล การเรียงลำดับข้อมูล การใช้กองซ้อนภายในเครื่องเสมือนจาวา การอนุพันธ์ของฟังก์ชันตัวแปรเดียวด้วยต้นไม้ การสร้างตัวจำลองวงจรตรรกด้วยแถวคอยบุริมภาพ เป็นต้น โดยใช้ภาษาจาวาในการเขียนโปรแกรมสั้น ๆ สวย ๆ ให้เห็นจริง อีกทั้งยังสอดแทรกแนวคิดการออกแบบเชิงวัตถุและการใช้แบบอย่างการออกแบบ (เช่น ตัวเยี่ยมชม ตัวแจงย้ำ) ทั้งนี้มีวัตถุประสงค์หลักเพื่อให้ผู้อ่าน “เลือกเป็น ใช้เป็น และสร้างเป็น” เราต้องรู้ว่าเมื่อไรควรเลือกใช้โครงสร้างข้อมูลแบบใดกับงานประเภทใด ด้วยประสิทธิภาพที่ต่างกันอย่างไรทั้งทางทฤษฎีและทางปฏิบัติ ต้องเรียกใช้บริการต่าง ๆ ที่ตัวข้อมูลมีให้ได้อย่างถูกต้อง รู้เงื่อนไขที่จำเป็นต้องมีก่อนใช้บริการ รู้ว่าอะไรคือผลที่ได้หลังการใช้บริการ และสุดท้าย คือต้องรู้วิธีการแปลงแนวคิดการจัดเก็บและจัดการข้อมูล เพื่อเขียนออกมาเป็นโปรแกรมที่ใช้งานได้จริงอย่างมีประสิทธิภาพ
   
 cover-alg4 การออกแบบและวิเคราะห์อัลกอริทึม
โดย รศ.ดร.สมชาย ประสิทธิจูตระกูลอัลกอริทึม คือ ขั้นตอนวิธีการแก้ไขปัญหาด้วยคอมพิวเตอร์ อันเป็นแนวคิดการแก้ปัญหาของผู้ออกแบบที่นำมาแปลงเป็นฮาร์ดแวร์หรือซอฟต์แวร์ อัลกอริทึมจึงเป็นศาสตร์ที่มีบทบาทสำคัญมากในการศึกษาทางวิทยาการและวิศวกรรมคอมพิวเตอร์ หนังสือเล่มนี้นำเสนอกลวิธีมาตรฐานต่าง ๆ ในการออกแบบและการวิเคราะห์อัลกอริทึม พร้อมกับการจำแนกความยากง่ายของปัญหา ตัวอย่าง และแบบฝึกหัด โดยมีจุดประสงค์หลักเพื่อให้ผู้อ่านสามารถออกแบบอัลกอริทึมที่มีประสิทธิภาพเพื่อแก้ไขปัญหาที่ได้รับ
   
javaprogramming101 Learning Computer Programming using JAVA with 101 examples
By Assoc.Prof.Atiwong Suchato, Ph.D.ฺBeing able to write computer programs is necessary for all college students in all Science and Technology fields. Java is one of the languages most preferred by beginners of computer programming since the language is easy to understand and use while, at the same time, learning Java also introduces learners to the concepts of Object-Oriented Programming, the most popular programming paradigm in modern days. This book was written based on the author’s experience in teaching freshmen in a fundamental programming course at Chulalongkorn University. Emphasis is placed on providing “tangible” examples to help readers understand programming concepts more clearly while “too deep” details that can be considered not crucial to beginners are avoided.