รักษา“ รหัส” ให้ห่างจากนักออกแบบหรือไม่


15

ฉันสร้างโปรเจ็กต์เล็ก ๆ กับเพื่อนของฉัน แต่เรามักจะเจอกับความผิดพลาดซ้ำแล้วซ้ำอีก ฉันรู้วิธีเขียน PHP, Javascript และทุกอย่าง (ฉันรู้ CSS และ HTML) ดังนั้นฉันจึงสามารถทำงานส่วนใหญ่เมื่อมันมาถึงการสร้างฟังก์ชันการทำงานจริง อย่างไรก็ตามเขาทำไม่ได้ แต่เขาสามารถทำสิ่งที่ฉันแทบจะไม่สามารถทำได้: ออกแบบเว็บไซต์

แต่ทุกครั้งที่เราพบปัญหาเนื่องจากเขาไม่รู้วิธีเขียนโค้ดโดยทั่วไปการพัฒนาของเราช้าลงเล็กน้อย ในขณะนี้เป็นขั้นตอนการทำงานของเรา:

  1. เรามาพร้อมกับคุณสมบัติ
  2. เขาสร้างการออกแบบ front-end (ที่ควรจะวางไว้อย่างไรมันจะมีลักษณะ ฯลฯ )
  3. เขาส่งแม่แบบที่สมบูรณ์ให้ฉัน (การส่งออก HTML จาก Pinegrow)
  4. ฉันค้นหาการเปลี่ยนแปลงที่เขาทำจากนั้นนำไปใช้ในไซต์จริง (ตั้งแต่สองสามสัปดาห์ฉันใช้ CakePHP)
  5. เมื่อบางสิ่งบางอย่างไม่ได้ผลตามที่ตั้งใจ (เช่นเช่นมันไม่ได้ผลตามที่เราวางแผนด้วยเหตุผลบางอย่าง) ฉันจะแก้ไขปัญหาด้านข้างแล้วส่งแม่แบบกลับมาให้เขา
  6. ล้างและทำซ้ำ

กระบวนการนี้อย่างที่ใคร ๆ ก็จินตนาการได้ว่าช้าและไม่มีประสิทธิภาพอย่างเจ็บปวด ดังนั้นคำถามของฉันคือเราจะทำให้กระบวนการนี้ราบรื่นขึ้นได้อย่างไร ฉันได้เห็นสิ่งต่าง ๆ มากมายเกี่ยวกับการที่เราควรใช้ React และใช้ RESTful และไม่ใช้อะไร แต่เราต้องการใช้ CakePHP สำหรับมัน บางคนสามารถแนะนำฉันเกี่ยวกับแหล่งข้อมูลที่เป็นประโยชน์เกี่ยวกับเรื่องนี้? ฉันกำลังมองหาสิ่งนี้ในขณะนี้ แต่ไม่เคยได้รับการแก้ไขที่ดีสำหรับเรื่องนี้

โดยพื้นฐานแล้วพันธมิตรของฉันทั้งหมดสามารถทำได้คือออกแบบเว็บไซต์ เขาไม่สามารถใช้นักเทียบท่า (ฉันใช้นักเทียบท่าตลอดเวลา), PHP, Javascript และอื่น ๆ อีกมากมาย (เขารู้ CSS บางอย่าง แต่ส่วนใหญ่ทำงานร่วมกับWYSIWYGเครื่องมือแก้ไข) ฉันยินดีที่จะเรียนรู้มัน แต่เขาเป็น ไม่สนใจ (ดังนั้นฉันก็เคารพมัน) ฉันหวังว่าบางคนที่นี่สามารถช่วยฉัน (และคนอื่นอาจมาด้วยคำถามนี้ในภายหลัง) ออกมาพร้อมกับสิ่งนี้เพราะฉันคิดว่ามันค่อนข้างสำคัญ


4
ฉันไม่เข้าใจว่าปัญหาของคุณคืออะไร นี่คือการแยกความกังวลออกจากกัน เขาเขียนเทมเพลตใน HTML คุณเขียนส่วนที่เหลือ เขาไม่ควรต้องใช้ Docker container ในการทำเช่นนั้นไม่ว่าจะเป็น PHP หรือ Javascript คุณทำไปแล้ววิธีที่ดีที่สุด หากปัญหากำลังส่งไปมาให้วางโครงการทั้งหมดลงในที่เก็บ Github และแชร์ (คุณต้องมีการควบคุมแหล่งที่มา)
Robert Harvey

1
น่าเสียดายที่ธรรมชาติของการพัฒนาแบบวนซ้ำ สิ่งต่าง ๆ เปลี่ยนไป หากปัญหาคือเขาเห็นว่าเสร็จสมบูรณ์ทำงานออกแบบและตัดสินใจที่จะเปลี่ยนแปลงอย่างสมบูรณ์แล้วคุณจะต้องบอกให้เขาออกแบบให้คุณที่อยู่ใกล้กับผลิตภัณฑ์สำเร็จรูปจริงแล้วสวย
Robert Harvey

1
ใช่ฉันต้องคัดลอกการเปลี่ยนแปลงทั้งหมดในรหัสของฉันและเพิ่มเนื้อหาแบบไดนามิกใน (เช่นแบบฟอร์มที่สร้างโดยเนื้อหา CakePHP n) ถ้าฉันใช้เทมเพลตของเขาโดยตรงฉันจะสูญเสียรหัส PHP ทั้งหมดที่ฉันใส่เข้าไปแล้ว
Finlay Roelofs

2
คุณสามารถนั่งรวมกันในห้องเดียวโดยใช้คอมพิวเตอร์เครื่องเดียวและรวมงานของคุณได้ไหม การเขียนโปรแกรมคู่อาจมีประสิทธิภาพสูงสุดสำหรับปัญหาประเภทนี้ซึ่งคุณต้องนำทักษะสองชุดมารวมกัน
amon

3
@FinlayRoelofs คุณอาจลองเรียนรู้วิธีการใช้ git คุณควรตรวจสอบรหัสของกันและกันก่อนผลักดันของคุณเองจากนั้นคุณจะอยู่ในหน้าเดียวกันเสมอ
Zymus

คำตอบ:


26

ต้องการปลดปล่อย Front End Designer ของคุณจากโค้ดหรือไม่ ต้องการเพิ่มความเร็วการรวม? ต้องการใช้เทคนิคระดับมืออาชีพที่ใช้โดยเว็บไซต์ที่ลื่นที่สุดหรือไม่? จนถึงตอนนี้เครื่องมือที่ดีที่สุดสำหรับสิ่งนี้คือ:

สี.

ใช่สี โปรแกรมวาดภาพกันดีอยู่แล้ว ให้เขาถ่ายภาพหน้าจอของไซต์ย้ายสิ่งต่าง ๆ และเพิ่มสิ่งที่เขาพบที่อื่น สิ่งนี้จะทำให้เขาทำงานได้อย่างรวดเร็วตามความคิดของเขาและปลดปล่อยคุณให้โค้งงอโค้ดให้เป็นรูปร่างใดก็ได้ที่ดีที่สุดสำหรับคุณในขณะที่ให้สิ่งที่เขาต้องการกับเขา

หากยังช้าเกินไปพูดเพราะลูกค้าอยู่ในห้องกับคุณทั้งคู่ฉันขอแนะนำชุดเครื่องมือขั้นสูงเพิ่มเติม:

กระดาษกรรไกรและเทป

บางทีปากกาถ้าคุณรู้สึกทะเยอทะยาน

ฉันใช้เทคนิคนี้ในการตัดสินใจเกี่ยวกับรูปแบบสไตล์เนื้อหาและคุณสมบัติหลักสำหรับไซต์ที่โต๊ะใน Panera Bread กับลูกค้าก่อนที่จะมีใครรู้ว่าเรากินเสร็จแล้ว

นั่นจะทำให้เขาเร็วขึ้นมันจะทำให้คุณเป็นอิสระจาก "รหัส" ของเขาและจริงๆแล้วมันเป็นวิธีที่ทรงพลังที่สุดในการพัฒนาส่วนต่อประสานกับผู้ใช้ เขาสามารถเริ่มทำการทดสอบการใช้งานก่อนที่คุณจะเขียนโค้ด

คุณอาจกำลังคิดว่า "โอ้นี่ใช้ได้เมื่อเริ่มต้น แต่คุณจะไม่ใช้สิ่งนี้เมื่อมีการพัฒนาเว็บไซต์" ไม่จริง. มันทำงานได้ดีบนไซต์ที่เสถียร แต่ตอนนี้ภาพหน้าจอส่วนใหญ่มาจากไซต์ของคุณเอง

จะเป็นอย่างไรถ้า Front End Designer ของคุณต้องการใช้เครื่องมือสร้างรหัสเพื่อสร้างจำลองของเขา ไม่เป็นไร แต่อย่าคิดว่าเดี๋ยวคุณจะต้องใช้ "รหัส" ของเขา สิ่งที่คุณต้องเคารพคือการตัดสินใจของเขาเกี่ยวกับลุคการไหลและการนำเสนอ สิ่งที่เกิดขึ้นหลังม่านคือสิ่งที่เกิดขึ้นไม่ใช่ความเชี่ยวชาญของเขา มันเป็นของคุณ. รับผิดชอบต่อสิ่งนั้น

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

นี่คือการพัฒนาซ้ำ อย่าทำมากก่อนถาม ทำน้อยที่สุดเท่าที่จะทำได้ ถามบ่อยเท่าที่จะทำได้ วางของเล่นไว้บนโต๊ะของคุณเพื่อให้เขาเพลิดเพลินในขณะที่คุณใช้ความคิดล่าสุดของเขาเพื่อให้เขาสามารถตรวจสอบได้ทันทีที่โหลด ทำแบบนี้ต่อไปจนกว่าจะถึงเวลาพบกับลูกค้า

หากโค้ดที่ Front End Designer สร้างนั้นคุ้มค่ากับปัญหาคุณต้องเรียนรู้ที่จะรวมรหัสของคุณเข้ากับเขา สำหรับผมนี้ขอแนะนำให้คุณเรียนรู้การควบคุมแหล่ง เรียนรู้ให้ดีเพื่อให้คุณสามารถสอน Front End Designer ของคุณถึงวิธีใช้งาน

เพียงครั้งเดียวที่คุณทั้งคู่สามารถใช้เครื่องมือควบคุมแหล่งข้อมูลได้อย่างน่าเชื่อถือฉันขอแนะนำให้คุณใช้แผนการรวมของคุณในการรวมรหัส ณ จุดนี้เพื่อนของคุณควรได้รับการเปลี่ยนชื่อจาก Front End Designer เป็น Front End Developer

ตอนนี้แม้ว่าคุณจะทำสิ่งนี้มันจะไม่ทำให้ฉันประหลาดใจถ้าเทคนิคการวาดเส้นบนหน้าจอยังไม่กลายเป็นวิธีที่เร็วที่สุดสำหรับคุณสองคนในการทำงานร่วมกัน

บางทีคุณอาจไม่สามารถรับมือกับความเปลี่ยนแปลงเหล่านี้ทั้งหมดได้ มันสร้างงานมากเกินไป มันเรียกว่าซอฟต์แวร์เพราะมันยอมรับการเปลี่ยนแปลง ไม่เช่นนั้นเราจะมีวิศวกรไฟฟ้าทำบนชิปพิเศษ อาจเป็นไปได้ว่าคุณต้องเข้าถึงเพื่อย้ายตรรกะพฤติกรรมของคุณออกจากส่วนติดต่อผู้ใช้ดังนั้นการเปลี่ยนแปลง UI จะไม่ส่งผลกระทบต่อกฎธุรกิจหลักของคุณ หากคุณเร่งความเร็ว Front End Designer ของคุณคุณจะต้องพร้อมที่จะไล่ตามพวกมัน

เหตุผลที่ดีเพียงอย่างเดียวในการบังคับให้ Front End Designer สร้างโค้ดคือคุณเหนื่อยและต้องการทำให้ช้าลง ฉันคิดว่านั่นไม่ใช่เหตุผลที่ "ดี" จริงๆ


ฉันเห็นสิ่งที่คุณพูด แต่ที่สำคัญคือไม่มีลูกค้า เราสร้างโครงการด้วยตัวเอง (โดยทั่วไปเราคิดขึ้นมาและพยายามสร้างสิ่งนั้นในฟังก์ชั่นที่เกิดขึ้นจริงถ้าเราทำมันเป็นไปได้จริงสำหรับเรา) เราใช้ Git สำหรับสิ่งต่าง ๆ ส่วนใหญ่แล้ว แต่ฉันยังต้องเพิ่มการเปลี่ยนแปลงด้วยตนเอง (การทำมาร์จจบลงด้วยรหัสของฉันหรือโค้ดของเขากำลังเรียงลำดับสวยมากเอ่อ ... หายไป)
Finlay Roelofs

1
จากนั้นลูกค้าคือผู้ใช้แต่ละคนและทุกคน อย่างไรก็ตามถ้านี่เป็นความจริง: "เนื่องจากเขาไม่รู้วิธีการเขียนโค้ดโดยทั่วไปการพัฒนาของเราช้าลงเล็กน้อย" จากนั้นหยุดทำให้เขาทำงานกับรหัส ลองวิธีอื่น เขาจะทำให้คุณฝันร้ายโดยไม่รู้ว่าทำไมถ้าคุณทำให้เขาคิดว่าเขาต้องให้รหัสแก่คุณ นอกจากนี้มัน น่ากลัวคนในนั้นที่ไม่เคยได้สัมผัสรหัส ให้ความเคารพ ปล่อยให้พวกเขาทำสิ่งที่พวกเขารักเพื่อที่พวกเขาจะได้เปล่งประกาย
candied_orange

1
ฉันได้ใช้ Powerpoint สำหรับเรื่องนี้ - คิดว่าการระบายสีบนเตียรอยด์ ฉันใช้สไลด์เพื่อแสดงลำดับของขั้นตอนการทำงาน ฯลฯ ....
mattnz

2
@mattnz ฟังดูยอดเยี่ยม สิ่งที่สำคัญที่สุดคือการโค้งงอเครื่องมือตามวัตถุประสงค์ของคุณ อย่าปล่อยให้เครื่องมือกำหนดว่าคุณได้รับอนุญาตให้แก้ปัญหาอย่างไร ขอให้ฉันคิดเอง
candied_orange

4
+1 ประเด็นหลักที่นี่คือเพื่อนที่ใช้ Pinegrow และพวกเขาคาดหวังว่าจะรวมได้อย่างง่ายดาย
พอล

7

ในแง่ของเครื่องมือเวิร์กโฟลว์ที่ดีที่สุดที่ฉันเห็นคือการใช้ Sketch และ Zeplin Sketch เป็นเครื่องมือออกแบบแบบตรงขึ้น เทียบเท่ากับ Photoshop หรือ InDesign แต่ปรับให้เหมาะสำหรับการออกแบบแอพและเว็บไซต์ Zeplin เป็นเครื่องมือสำหรับการแบ่งปันและอนุมัติการออกแบบใน Sketch (หรือ Photoshop) สามารถให้การวัดพิกเซลที่แม่นยำและแม้แต่โค้ดขนาดสั้นสำหรับ CSS หรือโค้ดเลย์เอาต์อื่น ๆ และส่งออกเนื้อหากราฟิก เมื่อตั้งค่าการออกแบบแล้วมันจะถูกส่งมอบให้กับนักพัฒนา ณ จุดนี้นักพัฒนาเลือกมันและสร้าง UI จากนั้นสามารถกลับไปที่นักออกแบบเพื่อรับ QA ที่มองเห็นได้ สิ่งใดที่เขาพบว่าผิดพลาดมันควรจะถูกบันทึกไว้ว่าเป็นข้อผิดพลาดที่จะจัดลำดับความสำคัญและแก้ไขโดยคุณ


นั่นดูน่าสนใจอย่างแน่นอน น่าเสียดายที่มันค่อนข้างแพง (โดยเฉพาะอย่างยิ่งเมื่อเราทำเงินประมาณ 1 หรือ 2 เหรียญต่อเดือนเรากำลังทำเพื่อความสนุก) ฉันจะระลึกไว้เสมอหากเราเริ่มทำเงิน (ด้วยเหตุผลบางอย่าง) .
Finlay Roelofs

Zeplin ยังคงให้บริการฟรีสำหรับหนึ่งโครงการ ร่างเป็น $ 99 / ปีซึ่งค่อนข้างเจียมเนื้อเจียมตัว
jiggy

0

เมื่อบางสิ่งบางอย่างไม่ได้ผลตามที่ตั้งใจ (เช่นเช่นมันไม่ได้ผลตามที่เราวางแผนด้วยเหตุผลบางอย่าง) ฉันจะแก้ไขปัญหาด้านข้างแล้วส่งแม่แบบกลับมาให้เขา

นั่นคือรากของปัญหาของคุณ การไหลของการออกแบบควรมาจากDesigner to Developerและไม่เคยย้อนกลับ ผู้ออกแบบควรทำการแก้ไขและเปลี่ยนแปลงจากนั้นจึงส่งให้คุณเพื่อนำไปใช้ในเว็บไซต์ คุณสามารถแก้ไขได้อย่างรวดเร็วด้วยตนเอง แต่พยายามยอมรับว่าการแก้ไขด่วนเหล่านั้นเป็นเพียงชั่วคราว นักออกแบบต้องกลับไปที่การออกแบบของเขาและหาทางออกที่เหมาะสม จากนั้นเขาก็ผลักดันการเปลี่ยนแปลงให้กับคุณและถ้ามันเป็นเช่นเดียวกับการแก้ไขด่วนของคุณแล้วดีมากมิฉะนั้นคุณจะปรับปรุงจากการออกแบบของเขา

เขาส่งแม่แบบที่สมบูรณ์ให้ฉัน (การส่งออก HTML จาก Pinegrow)

อย่าติดการรับ HTML ที่คุณสามารถทำงานได้ มันจะดีกว่าถ้าคุณใช้เทคโนโลยีเว็บไซต์ (Bootstrap, CSS, jQuery, React, PHP, ฯลฯ .. ฯลฯ .. ) ในแบบที่คุณต้องการ จากนั้นคุณสร้างการออกแบบของเขาซ้ำโดยใช้เครื่องมือเหล่านั้น ถ้า HTML ที่เขาให้นั้นเป็นการเริ่มต้นที่ยอดเยี่ยม แต่หลังจากนั้นเมื่อโครงการเติบโตขึ้นมันก็จะไม่ใช้งานมากนัก คุณจะต้องทำการเปลี่ยนแปลงด้วยตัวเองเพราะมีเพียงคุณเท่านั้นที่เข้าใจเครื่องยนต์เทมเพลตของคุณ (เช่นมุมมอง CakePHP, แม่แบบ, ปลั๊กอิน, ส่วนประกอบ ฯลฯ .. )

กระบวนการนี้อย่างที่ใคร ๆ ก็จินตนาการได้ว่าช้าและไม่มีประสิทธิภาพอย่างเจ็บปวด

มันเป็นอย่างนั้นเสมอ นักออกแบบไม่ใช่โปรแกรมเมอร์ พวกเขาใช้เวลาคิดว่าอะไรดีที่สุดสำหรับผู้ใช้และบางครั้งพวกเขาก็ทำผิดพลาด พวกเขาไม่เข้าใจแนวคิดเช่นองค์ประกอบกรอบและเช่น เป็นโปรแกรมเมอร์ที่คุณจะต้องพูดคุยกับนักออกแบบของคุณและแบ่งปันวิธีที่ผมใช้สิ่งที่คุณออกแบบ

ผู้ออกแบบติดอยู่ตรงกลาง ในอีกด้านหนึ่งพวกเขาจะต้องพอใจกับความต้องการของโปรแกรมเมอร์และอีกด้านหนึ่งพวกเขาจะต้องพอใจกับความต้องการของผู้ใช้

ดังนั้นคำถามของฉันคือเราจะทำให้กระบวนการนี้ราบรื่นขึ้นได้อย่างไร

ฉันพบว่าร่างกายกำลังนั่งอยู่ข้างนักออกแบบและการเขียนโปรแกรมมีส่วนช่วยในเรื่องการสื่อสาร หากคุณสองคนกำลังทำงานจากระยะไกลให้ทำงานต่อเนื่องเป็นเวลาสองสามวัน มันช่วยเร่งความเร็วสิ่งต่างๆ

ฉันได้เห็นสิ่งต่าง ๆ มากมายเกี่ยวกับการที่เราควรใช้ React และใช้ RESTful และไม่ใช้อะไร แต่เราต้องการใช้ CakePHP สำหรับมัน

CakePHP เป็นหนึ่งในเฟรมเวิร์กที่ดีที่สุดในโลก

เค้กเป็นกรอบการพัฒนากระต่ายที่คุณสมบัติถูกออกแบบมาเพื่อสร้างเว็บไซต์ได้อย่างรวดเร็ว ฉันรู้ว่าเสียงเหมือนสนามขาย แต่นี่คือสิ่งที่มันจัดเป็น มีกรอบอื่น ๆ อีกมากมายที่จัดเป็นกระต่าย Java จะเป็นตัวอย่างของกรอบงานที่เป็นองค์กรมากกว่ากระต่าย หากคุณใช้ภาษานั้นฉันก็จะแนะนำให้เปลี่ยน เนื่องจากคุณใช้ CakePHP ฉันจะโต้แย้งคุณควรอยู่กับมัน

CakePHP สร้างเซิร์ฟเวอร์แบ็คเอนด์ที่ดีหากคุณต้องการ RESTful API

React / Angular / Vue ล้วน แต่เป็นที่นิยมและได้รับความนิยมในส่วนหน้า แต่ก็ไม่ได้มีมานานแล้ว CakePHP ในทางกลับกันมานานกว่า 13 ปีแล้ว ประเด็นของฉันไม่ใช่การวิจารณ์ ข้อเท็จจริงที่ว่าไลบรารี JavaScript เหล่านี้มีอายุการเก็บสั้น ใน 5 ปีเราจะพูดถึงสิ่งใหม่ ๆ แต่ฉันสงสัยว่า CakePHP จะยังคงอยู่

ดังนั้นฉันพูด ใช้ React / Angular / Vue ตอนนี้ในขณะที่ฮ็อต แต่ไม่ควรทำ สิ่งใหม่และดีกว่าจะเข้ามาในไม่ช้า ฉันคิดว่าเราอยู่ในโลกที่คุณไม่สามารถสร้างเว็บไซต์ที่ดีได้หากไม่มีพวกเขา

บางคนสามารถแนะนำฉันเกี่ยวกับแหล่งข้อมูลที่เป็นประโยชน์เกี่ยวกับเรื่องนี้?

คำขอสำหรับรายการอยู่นอกหัวข้อที่นี่ ขอโทษ

แก้ไข :

ฉันพลาดส่วนหนึ่งเกี่ยวกับการติดตามการเปลี่ยนแปลงการออกแบบ

ให้ดีไซเนอร์ของคุณบันทึกเอาต์พุต HTML ของเขาใน BitBucket (มีที่เก็บส่วนตัวฟรี) จากนั้นคุณสามารถติดตามและเปรียบเทียบโดยใช้เว็บไซต์ BitBucket ทุกครั้งที่ผู้ออกแบบทำการเปลี่ยนแปลงครั้งใหญ่เขาจะเพิ่มสาขาใหม่พร้อมหมายเลขเวอร์ชัน

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


2
ด้วยค้อนของ Grapthar! คนอื่นช่วยอธิบาย downvote ของคุณไหม?
Radarbob

0

คุณต้องแยกสองสิ่งนี้:

  1. การออกแบบ UX & UI เป็นกิจกรรมที่ไม่เข้ารหัส
  2. การใช้งานแน่นอนกิจกรรมการเข้ารหัส

นักออกแบบควรใช้เครื่องมือสร้างสรรค์เช่นMarvelซึ่งเป็นเพียงการออกแบบ ไม่ควรกังวลนักออกแบบที่จะทำอะไรกับรหัส, HTML, CSS ฯลฯ สี, มิติ, ความสวยงาม, การโต้ตอบ, ภาพเคลื่อนไหวเป็นทุกสิ่งที่เขาควรจะเน้น

โปรแกรมเมอร์ควรได้รับสินทรัพย์และการจำลอง (พร้อมการโต้ตอบและภาพเคลื่อนไหว) และควรทำให้เกิดขึ้นโดยการเขียนโปรแกรมซอฟต์แวร์ รวมถึง HTML และ CSS ด้วย โปรแกรมเมอร์สามารถใช้เครื่องมือเครื่องกำเนิดไฟฟ้าที่ด้านข้างของเขาเช่นกัน

เพื่อเพิ่มความเร็วการไหลของงานฉันแนะนำให้ใช้เครื่องมือขั้นต่ำเช่นTrelloและลิงค์ / เอกสารทุกอย่างสำหรับแต่ละหน่วยงาน


0

เราจะทำให้กระบวนการนี้ราบรื่นขึ้นได้อย่างไร

ยืนยันในการควบคุมเวอร์ชัน

สาขาซอฟต์แวร์และจักรวาลคู่ขนาน

  • ทำงานบนไม่มีรหัสไม่ได้อยู่ในการควบคุมเวอร์ชัน หยุดเต็ม และฉันหมายถึงหยุดงานประท้วงจนกว่าโครงการทั้งหมดจะอยู่ใน VCS
  • สาขาอย่างเป็นทางการอย่างอิสระในพื้นที่
    • อย่างเป็นทางการ: การแบรนช์สำหรับการเผยแพร่และส่วนย่อยของรีลีสการแก้ไขการทดสอบที่เป็นทางการ ฯลฯ พัฒนาแผนการควบคุมเวอร์ชันที่เป็นทางการเช่นจดบันทึก
    • อย่างอิสระ: นอกเหนือจากการกำหนดหมายเลขรุ่นอย่างเป็นทางการ 4 ส่วนแล้วให้แยกสาขาถ้าลำไส้ของคุณบอกคุณว่าอาจเป็นความคิดที่ดี
    • ในพื้นที่: ฉันเก็บ repo ส่วนบุคคลที่มีสาขาไม่ได้มีไว้สำหรับการบริโภคเป็นทีมเพราะในฐานะทีมที่เราไม่ได้สาขาในตอนแรกและฉันมักจะมีการทดลองการสำรวจในกรณีอื่น ๆ

สร้างขุมพลังจาก API มิดเดิลแวร์ของคุณ

ประโยชน์ที่ได้รับ:

  • ความเสถียร - แม้ว่ารหัสพื้นฐานจะมีการพัฒนา
  • รหัสที่ทดสอบได้
  • เรื่องการใช้งาน
  • เครื่องมือสื่อสารของทีม
  • มันเป็นสัญญา คำมั่นสัญญาของการให้บริการ (ปุนตั้งใจ)
  • การเขียนโปรแกรมในขอบเขตของ SOLID == โปรแกรมเมอร์บำรุงรักษาที่มีความสุข

มันคือการถามอย่าบอกหลักธรรมที่ประยุกต์ใช้ในทางที่ครอบงำซึ่งควรจะเป็น หาก UI กำลังจัดการคุณสมบัติเลเยอร์ธุรกิจเดียวนั่นเป็นสิ่งที่ผิด

ทุกอย่างและทุกอย่างเกี่ยวกับวัตถุทางธุรกิจจะต้องอยู่ใน BO ของกล่าว แม้แต่สิ่งเล็กน้อยที่อาจทำได้ดีที่สุดใน UI - แม้แต่ LOC เดียว Minuita เช่นการเพิ่ม 2 ค่าที่ผู้ใช้กำหนด - ตรรกะที่เกี่ยวข้องทั้งหมดรวมถึงการตรวจสอบความถูกต้องจะต้องอยู่ในชั้นธุรกิจ API IMO ซ้ำซ้อนบางครั้งก็โอเค เพื่อลดความซ้ำซ้อนอาจมีวัตถุเลเยอร์ธุรกิจที่เน้นขนาดเล็กซึ่ง UI ได้รับอนุญาตให้เข้าถึงได้อย่างสมบูรณ์

ทุกสิ่งและทุกสิ่งที่ UI ต้องการจากออบเจ็กต์ธุรกิจควรเป็น API'ed ตัวอย่างเช่นมีเมธอดที่ชัดเจนที่เชื่อมโยงอาร์กิวเมนต์ไปยังตัวจัดการเหตุการณ์


ระวังกรอบเหมือนไม้ยันรักแร้

อยู่ในมือของผู้ไร้ฝีมือกรอบและ IDE ไม่ใช่อุปสรรคต่อสัตว์ประหลาด B-movie ที่พวกเขาสร้าง

ด้วยเฟรมเวิร์กอย่าง React คุณอาจกล่าวได้ว่าเป็นฝั่งไคลเอ็นต์ทั้งหมดไม่มีเลเยอร์ตรรกะทางธุรกิจ back end แนวคิดหลักที่นี่คือแยกส่วนที่ผู้ใช้เห็นจากสิ่งที่โปรแกรมทำ ที่ทำได้ มันไม่ได้เป็นเพียงแค่เซิร์ฟเวอร์ที่มีอยู่จริงและสิ่งที่เบราว์เซอร์ของผู้ใช้


-3

ฉันคิดว่ามันเป็นตัวบ่งชี้ที่ดีของความไร้สมรรถภาพทางวิชาชีพและการฝึกฝนที่เรายอมรับว่าคนที่ออกแบบไม่สามารถทำได้

สิ่งนี้จะไม่เป็นที่ยอมรับในเกือบทุกอาชีพอื่น ๆ


มีเหตุผลที่จะคาดหวังว่านักออกแบบที่มีความเชี่ยวชาญในการออกแบบเว็บไซต์ / แอพรู้ CSS และ HTML ได้ดีพอที่จะให้ไฟล์ที่ใช้งานและใช้งานได้ประเภทนั้น

นักออกแบบที่ให้บรรณาธิการกราฟิกแบบ WYSIWYG เป็นนักออกแบบภาพหรือกราฟิก มีนักออกแบบหลายประเภท

อย่างไรก็ตามยังมีระดับทักษะความสามารถและประสบการณ์หลายประเภท ผู้ที่ออกแบบเฟอร์นิเจอร์สามารถทำได้ด้วยคอมพิวเตอร์โดยใช้เครื่องมือออกแบบ 3 มิติซึ่งในกรณีนี้ความรู้เกี่ยวกับวิธีการกลึงหรือใช้งานเราเตอร์ CNC อาจเป็นไปตามทฤษฎีทั้งหมด พวกเขาทำแบบของพวกเขาแล้วส่งพวกเขาไปให้คนอื่นทำ

ในทางกลับกันนักออกแบบผู้เชี่ยวชาญบางคนอาจควบคุมกระบวนการทั้งหมดและมีความสามารถและความรู้ในการสร้างเฟอร์นิเจอร์ของพวกเขาด้วยตาทุกรายละเอียดบางทีแม้แต่งานฝีมือด้วยมือ

คุณจะไม่สามารถโน้มน้าวให้เพื่อนของคุณเปลี่ยนวิธีการทำงานของพวกเขา หากคุณต้องการมีนักออกแบบเว็บไซต์ที่มีทักษะ HTML และ CSS เพื่อสร้างการออกแบบของตัวเองคุณจะต้องค้นหา


Downvotes นั้นเฮฮา ฉันเดาว่านี่เป็นวัวศักดิ์สิทธิ์หรือไม่?
RibaldEddie

สิ่งที่เป็นไฟล์ที่เขาส่งมาให้ฉันเป็นไฟล์ HTML และ CSS ที่ใช้งานได้อย่างสมบูรณ์ แต่ฉันต้องค้นหาการเปลี่ยนแปลง (ทำได้อย่างง่ายดายด้วยเครื่องมือ diff) จากนั้นจึงปรับใช้ด้วยตนเองตามที่เราต้องการ
Finlay Roelofs

@FinlayRoelofs คุณหมายถึงอะไรโดย“ วิธีที่เราต้องการ” ทำไมไม่คุยกับนักออกแบบและขอให้พวกเขาเขียนการออกแบบตามที่ทีมต้องการ? มืออาชีพควรสามารถเรียนรู้และนำแนวทางปฏิบัติของทีมมาใช้
RibaldEddie

เราเป็นแค่ 2 ทีม เรามาพร้อมกับบางสิ่ง (เช่นเราต้องการหน้าเพื่อให้ผลิตภัณฑ์ทั้งหมดของเราอยู่ในตู้โชว์) และเราวางแผนร่วมกันเกี่ยวกับสิ่งที่เราต้องการในมันและสิ่งที่ควรทำ จากนั้นเขาก็ออกแบบสิ่งต่าง ๆ ในซอฟต์แวร์ของเขา (ในขณะเดียวกันฉันก็กำลังทำความสะอาดสิ่งที่ฉันทำไปแล้วหรือไปแก้ไขปัญหา) เมื่อเขาทำเสร็จเขาก็ส่งแม่แบบมาให้ฉันหลังจากนั้นฉันก็ทำสิ่งที่ฉันทำ
Finlay Roelofs

@ FinlayRoelofs ฉันสับสนแล้ว ขอโทษ ไม่ว่าคุณจะต้องยอมรับว่าคุณเป็นแค่ทีมสองคนและตัดสินใจว่าคุณต้องการใช้เวลากับการเขียนใหม่หรือยอมรับคุณภาพของสิ่งที่พวกเขานำเสนอ
RibaldEddie
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.