ทุกอย่างเริ่มต้นก่อนที่จะมี C #
ย้อนกลับไปในปี 1999 เรามี Visual Studio 5/6 หากคุณเป็นผู้จำหน่ายซอฟต์แวร์อิสระหรือองค์กรที่ใช้ Windows และต้องการแอปพลิเคชันที่สามารถเขียนได้เช่นติดตามเวลาของพนักงานที่ใช้ในโครงการคุณมีตัวเลือกน้อยดังนี้
- แบบฟอร์มใน Visual Basic
- MFC, ATL หรือ Win32 ใน Visual C ++
- แบบฟอร์มใน Access 97/2000
- เว็บไซต์ ASP
- Java applet
ในเวลานั้นเราเพิ่งจะเกิดฟองสบู่ Dot-Com ดังนั้นใครก็ตามที่ทำได้ดีกับ (4) หรือ (5) ก็ออกไปเจรจากับตัวเลือกหุ้นในจุดที่น่าตื่นตาตื่นใจดอทคอม
(3) มีปัญหาเกี่ยวกับการล็อคและความสามารถในการปรับขนาดโดยรวม แต่ฉันเห็นโซลูชัน Access-driven จำนวนมากซึ่งจะใช้การสนับสนุนฟังก์ชันตามที่จำเป็น
นั่นทำให้เราด้วย VB และ VC ++:
เครื่องมือแก้ไขแบบฟอร์มใน VB นั้นในเวลานั้นยอดเยี่ยมสำหรับผลผลิต คุณสามารถลากวางองค์ประกอบของคุณ - ไม่เพียง แต่ปุ่มป้ายกำกับและกล่องข้อความ แต่กล่องเครื่องมือ 'ตัวควบคุม OLE' เต็มรูปแบบของส่วนประกอบที่นำมาใช้ใหม่เช่นกริดฉลาดแผ่นงาน Excel หรืออินสแตนซ์ IE การวางสายเสร็จแล้วเบื้องหลังทุกอย่างเป็นไปตามวัตถุและคุณเพียงดับเบิลคลิกสิ่งต่าง ๆ เพื่อเพิ่มตัวจัดการเหตุการณ์ นี่ยากมากใน Visual c ++ ในฐานะสมาชิกของทีมสนับสนุนนักพัฒนา Visual Studio ในเวลานั้นฉันสามารถจำได้ว่าการโทรสนับสนุน Visual Basic นั้นส่วนใหญ่เกี่ยวกับองค์ประกอบที่ดีที่สุดที่จะใช้หรือวิธีการเพิ่มประสิทธิภาพแอปพลิเคชันของพวกเขาในบางวิธี มันแทบจะไม่เคย 'ฉันจะสร้างแอพพลิเคชั่นด้วยคุณสมบัติส่วนต่อประสานกับผู้ใช้ X, Y และ Z'
การสร้าง UI ที่หลากหลายใน Visual C ++ เป็นความท้าทายที่แตกต่าง แม้ว่าจะมีการสนับสนุนตัวแก้ไข Visual สำหรับกล่องโต้ตอบและรูปแบบ SDI / MDI แต่ก็มีข้อ จำกัด การสนับสนุนสำหรับการฝังตัวควบคุม OLE (ActiveX) ลงใน MFC หรือ Win32 เป็นงานศิลปะสีดำแม้ว่า ATL จะง่ายขึ้นเล็กน้อย การเดินสายสิ่งต่าง ๆ อย่างง่ายเช่นปรับขนาดกิจกรรมหรือวาดรูปเจ้าของนั้นเจ็บปวดมากให้คะแนนการเชื่อมต่อที่จำเป็นสำหรับเหตุการณ์ที่กำหนดเองในส่วนประกอบ
ใช่ VC ++ มีความเร็วในการดำเนินการความสามารถในการดีบักและเฟรมเวิร์ก / ไลบรารี่ / UI ที่ยืดหยุ่น แต่การสนับสนุน IDE ไม่สามารถครอบคลุมได้ทั้งหมด สายสนับสนุนเหตุการณ์ที่ไม่เกิดขึ้น 2 ครั้ง
IIRC ผู้จัดทำแอปพลิเคชันที่มาพร้อมกับ VB สามารถจัดเก็บแอปของคุณรันไทม์ VB และตัวควบคุมทั่วไปล่าสุด DLLs และจัดหาตัวติดตั้ง EXE แบบสแตนด์อโลนให้กับคุณซึ่งคุณสามารถใส่ลงในซีดีและไปหาลูกค้าได้ ไม่มี 'สิ่งนี้' ซึ่งคุณได้ติดตั้ง msvcrtXX.dll และ mfcxx.dll? 'ซึ่งรบกวนผู้พัฒนา MFC
ดังนั้นด้วยเหตุผลของเวลาที่ออกสู่ตลาดและส่วนติดต่อผู้ใช้ที่หลากหลาย VB ได้รับการติดตามที่ใหญ่มาก
เมื่อ Visual J ++ และ Visual Interdev เข้าชมใน VS6 เป็นที่ชัดเจนว่า Visual Basic IDE ชนะการต่อสู้มากกว่าหนึ่งใน Visual C ++ ซึ่งเป็น IMHO ที่ยุติธรรม ไม่แปลกใจเลยที่ Visual Studio .NET นั้นมีตัวแก้ไขรูปแบบ VB-like สำหรับภาษาCOOL C # ใหม่
Java / C / C ++ เหมือนภาษาใหม่ควบคู่ไปกับการออกแบบ UI ที่คน VB ชื่นชอบตลอดเวลาทำให้เส้นทางการโยกย้ายใหม่สำหรับคน C ++ ที่ทำด้วย MFC / ATL / Win32 สำหรับ VB 3/4/5/6 คนที่ไม่ชอบความเข้ากันได้แบบย้อนหลัง 100% ใน VB.net สิ่งนี้นำเสนอโอกาสในการเรียนรู้ภาษาใหม่ในสภาพแวดล้อมที่คุ้นเคย
เหตุผลที่ VB เป็นผลิตภัณฑ์ที่ครอบคลุมเช่นนั้นน่าจะมีบางอย่างเกี่ยวกับต้นกำเนิดของ Microsoft โดย Basic เป็นผลิตภัณฑ์สำหรับนักพัฒนาหลักของพวกเขา แต่ตอนนี้ฉันยังไม่มีการอ้างอิงใด ๆ