ดังที่คนอื่น ๆ พูดถึงมันเป็นเรื่องของการแลกเปลี่ยนและการมีความรู้ที่ถูกต้อง
ข้อผิดพลาดเพียงอย่างเดียวที่คุณอาจต้องการพิจารณาคือ: คุณพูดถึงคำถามของคุณว่าคุณเห็นว่าการใช้เว็บเป็น "cross-platform" เป็นข้อได้เปรียบ แต่มันจริงเหรอ? ลองใช้วิธีนี้: ถ้าคุณพัฒนาบางอย่างสำหรับเดสก์ท็อปคุณต้องกำหนดรายการแพลตฟอร์มและข้อกำหนดที่ต้องการสนับสนุน
อย่าทำผิดมันเป็นสิ่งเดียวกันสำหรับเว็บ และถึงแม้ว่ามันจะง่ายกว่าที่เคยเป็นมามากหากคุณออกแบบแอพสาธารณะที่กว้างคุณจะต้องจัดการกับเว็บเบราว์เซอร์ทุกเวอร์ชันที่เป็นไปได้ และถ้าเป็นแอพระดับองค์กรมากกว่านั้นให้รั้งตัวเองและเตรียมร่างข้อกำหนดเบราว์เซอร์ที่รองรับของคุณอย่างแม่นยำ
อย่าคิดว่าคุณจะหลีกเลี่ยงการแฮ็กเฉพาะแพลตฟอร์มที่นี่และถ้าคุณสร้างสิ่งที่สำคัญ
แล้วส่วนที่สนุก อะไรดีที่สุด? เบราว์เซอร์ที่อัปเดตตัวเองอย่างสม่ำเสมอเกือบจะเหมือน Chrome จริงๆ หรือรุ่นที่เปิดตัวการรักษาความปลอดภัยอัปเดตเฉพาะคุณสมบัติรายเดือนและรายใหญ่ทุกยุคหิน (เช่น IE)? คำตอบนั้นไม่ชัดเจนอย่างที่คุณคิดเพราะการอัปเดต "โปร่งใส" เหล่านี้บางครั้งอาจทำให้โค้ดของคุณเสียหายและคุณจะต้องทำตามและตอบกลับทันที หรือคอยจับตาดูเบต้าและ dev รุ่นก่อนวางจำหน่ายในขณะที่กำลังพัฒนาและทดสอบอยู่ สำหรับเบราว์เซอร์ทั้งหมดที่คุณพูดอย่างโง่เขลาว่าคุณต้องการการสนับสนุน (ขอให้โชคดี)
โอ้และอย่าลืมข้อควรพิจารณา UI นอกจากนี้คุณยังต้องเผชิญกับความสุขของการตัดสินใจว่าคุณต้องการ UI ที่สอดคล้องกันทั่วทุกแพลตฟอร์มเป้าหมายของคุณหรือสอดคล้อง UI กับแพลตฟอร์มเป้าหมายของโฮสต์แต่ละแห่ง เห็นปุ่มเล็ก ๆ ทั้งหมดที่คุณสามารถดูบนหน้าเว็บได้หรือไม่ คุณต้องการให้พวกเขาเหมือนกันทุกที่หรือรวมเข้ากับสภาพแวดล้อมที่ผู้ใช้ของคุณใช้หรือไม่ แน่นอนปัญหานี้ไม่ใช่เรื่องใหม่และมีอยู่สำหรับโมเดลการพัฒนาอื่น ๆ แต่ดูเหมือนว่าจะมีความสำคัญมากกว่าที่นี่และขึ้นอยู่กับประเภทของผู้ใช้ที่คุณกำหนดเป้าหมายและสิ่งที่พวกเขาคาดหวัง ผู้ใช้ปลายทางสาธารณะมักจะต้องการให้คุณรวมเข้ากับแพลตฟอร์มของพวกเขา - แต่ยังต้องการให้คุณ "ว้าว!" พวกเขามีสิ่งแฟนซี - ในขณะที่ผู้ใช้องค์กรจะต้องการสิ่งที่ดูเหมือนแอพเดสก์ท็อป และแพลตฟอร์มมือถือก็มีมิติใหม่สำหรับสิ่งนี้ทั้งหมด
สำหรับ 2 ย่อหน้าสุดท้ายบางครั้งแนวคิดที่พบบ่อยคือแพคเกจเว็บเบราว์เซอร์ที่กำหนดค่าไว้ล่วงหน้าพร้อมกับตัวติดตั้งของคุณซึ่งจะเชื่อมต่อกับเว็บแอปของคุณ (โฮสต์ในพื้นที่หรือบนเว็บ) มันยอดเยี่ยมมากเพราะคุณสามารถควบคุมความถี่ในการอัปเดตและคุณสามารถ "หยุด" สถานะและคุณรู้ว่าจะต้องสนับสนุนและทดสอบอะไร นอกจากนี้คุณสามารถเพิ่มสิ่งดีๆเช่นส่วนขยายผู้ใช้โดยเฉพาะ ตัวอย่างเช่นการบรรจุ Chromium "แช่แข็ง" ที่มีส่วนขยาย Chrome ขนาดเล็กที่คุณพัฒนาขึ้นเพื่อทำให้การใช้งานแอปพลิเคชันเว็บของคุณง่ายขึ้นสำหรับผู้ใช้ประเภทต่างๆนั้นจะดีมาก ในทางกลับกัน ... ตอนนี้คุณต้องรับผิดชอบหากมีการละเมิดความปลอดภัยเกิดขึ้นเพราะคุณทำรอบการปล่อยค้างไว้และแอปของคุณจะไม่ได้รับประโยชน์จากการปรับปรุงความเร็ว (ถ้ามี)
มันเหมือนกับขวานสองขวาน
หมายเหตุ:ฉันมีอคติที่แข็งแกร่งต่อเว็บเพราะโดยทั่วไปแล้วเป็นกองใหญ่ของเทคโนโลยีครึ่งอบ (และฉันสุภาพที่นี่), จนถึงเลเยอร์ OSI ซึ่งเราเพิ่มเลเยอร์ของอึซ่อนปัญหาภายใต้โดยไม่ต้องแก้จริง ๆ หรือแก้ไขพวกเขา
ที่ถูกกล่าวว่าฉันชอบเว็บสำหรับธรรมชาติที่แพร่หลายเป็นแพลตฟอร์ม ฉันคิดว่าการย้าย บริษัท ของคุณน่าจะเหมาะสม ขึ้นอยู่กับตลาดเป้าหมายของคุณและแพลตฟอร์มที่คุณต้องการ หากคุณต้องการเปิดเผยบางสิ่งบางอย่างเป็นบริการแสดงว่าคุณน่าจะไปได้ดี (แม้ว่ามันไม่จำเป็นเช่นกัน) หากคุณไม่ทำเช่นนั้นอาจมีเหตุผลไม่มากนัก
อืมและคาดว่าจะมีการพัฒนาที่สนุกสนานในอนาคตในขณะนี้ที่มีระบบปฏิบัติการรุ่นเก่าที่มีน้ำหนักเบาจำนวนมากวางไข่สำหรับสภาพแวดล้อมอุปกรณ์พกพา (เน็ตบุ๊กสมาร์ทโฟน PDAs แท็บเล็ต eBooks ... ) .. แต่ด้วยส่วนแบ่งใหม่ทั้งหมดของข้อบกพร่องในการแสดงผล UI
เกี่ยวกับเทคโนโลยีที่ใช้ปลั๊กอิน ... ฉันจะบอกให้ออกไปจากพวกเขา พวกเขาจะปรับปรุงพลังของแอปของคุณ แต่จะ จำกัด การรุกตลาด ในบางกรณีคุณจะเห็นว่ามันเป็นข้อดีในแง่ของการสนับสนุนข้ามแพลตฟอร์มจนกระทั่งจู่ ๆ แพลตฟอร์มใหม่ปฏิเสธที่จะสนับสนุนพวกเขา มาตรฐานเว็บมาที่นี่ด้วยเหตุผล (ระวังอย่าให้ตื่นเต้นเกินไปกับทุกสิ่งใน HTMl5 เช่นกันหรืออาจทำให้ใบหน้าของคุณระเบิด)
แก้ไข: สิ่งอื่น ๆ ที่ต้องพิจารณา ...
รับสมัครงาน
มันยากมากในการค้นหาผู้พัฒนาเว็บที่มีความรู้ คุณคิดว่ามีฝูงพวกเขา แต่พวกเขาหายไปในสระว่ายน้ำขนาดใหญ่ของคนที่ไร้ความสามารถพอสมควรที่คิดว่ามีการจัดการในการเขียน JavaScript / ECMAScript 700 บรรทัดเพื่อดำเนินการตรวจสอบความถูกต้องในรูปแบบของพวกเขา และเป็นสิ่งที่สามารถทำได้ในแง่ของทักษะระดับสูง
ฉันไม่ได้ล้อเล่นเมื่อเร็ว ๆ นี้คำถามแรกของฉันสำหรับการสัมภาษณ์การพัฒนาเว็บทั้งหมดคือวิธีการประกาศตัวแปรและจากนั้นไม่ว่าจะมีความแตกต่างระหว่างการใช้var
หรือไม่ (ขึ้นอยู่กับว่าพวกเขาตอบ) มันน่าหดหู่ ฉันพบว่าการหานักพัฒนาเว็บโดยเฉลี่ยหรือขั้นสูงนั้นทำได้ยากกว่าการหานักพัฒนาเดสก์ท็อปเฉลี่ยหรือขั้นสูง
ความเข้าใจ
ไม่มีใครจะพิจารณาคุณอย่างจริงจังเมื่อคุณพูดว่า "ฉันเป็นนักพัฒนาเว็บ" มันมีไว้สำหรับ sub-class ของโปรแกรมเมอร์นักพัฒนาไม่ใช่เหรอ? คนที่คุณเพิกเฉยและเยาะเย้ยจากระยะไกลและไม่เข้าร่วมเมื่อพวกเขาไปรับกาแฟ :)
เห็นได้ชัดว่าไม่จริง แต่มันมาจากความจริงที่ว่าคุณพัฒนาสำหรับสภาพแวดล้อมที่มีการจัดการส่วนใหญ่สำหรับคุณ เบราว์เซอร์แก้ไขมาร์กอัพที่เมาขึ้นของคุณสไตล์ที่ทำให้เมาของคุณและจะแก้ไขสคริปต์สกรูของคุณสำหรับบางส่วนและปรับให้เหมาะสมสำหรับคุณหากคุณต้องการ และถ้าคุณเป็นนักพัฒนาเว็บคนอื่นจะไม่คิดว่าคุณมีความรู้เกี่ยวกับการเขียนโปรแกรมระดับล่างดังนั้นคุณต้องเป็นคนงี่เง่าที่สมบูรณ์ใช่มั้ย
จากนั้นพวกเขาก็ตระหนักว่า ECMAScript ซับซ้อนอย่างบ้าคลั่งสามารถ แต่จะปฏิเสธที่จะทบทวนความคิดเห็นของพวกเขา เพราะมันเป็นเว็บ เราไม่ชอบสิ่งที่อยู่ภายในเราชอบสิ่งที่ทำให้เราสามารถทำได้