โครงสร้างโฟลเดอร์ที่ดีที่สุดสำหรับสารบบเว็บคืออะไร?


9

ฉันได้ทำการพัฒนาเว็บไซต์มาหลายปีแล้วและฉันก็ทำโครงสร้างเว็บแบบนี้มาตลอด:

public_html/login.php
public_html/css/login.css
public_html/js/login.js
public_html/img/logo.png

ฉันเคยเห็นคนอื่นใช้:

styles/login.css
images/logo.png

และเมื่อเร็ว ๆ นี้ฉันพบว่าเพื่อนร่วมงานของฉันชอบ:

public_html/a/login.js   - application
public_html/s/login.css  - styles
public_html/i/logo.png   - images
public_html/p/photo1.jpg - photos
public_html/f/menu.swf   - flash

นอกเหนือจากการบันทึกไบต์หรือสองมีข้อดีหรือข้อเสียใด ๆ ของตัวเลือกเหล่านี้หรือไม่ มีแนวปฏิบัติที่ดีที่สุดสำหรับแนวคิดนี้หรือไม่?


ตามคำขอโฟลเดอร์เพิ่มเติม: 't' สำหรับเทมเพลตและ 'x' สำหรับ xml
St. John Johnson

ค่อนข้างเกี่ยวข้อง: stackoverflow.com/questions/2114935/…
cregox

คำตอบ:


7

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

ผมพบว่าการรักษาชื่อโฟลเดอร์สามตัวอักษรเป็นอย่างละเอียดพอที่จะมีความหมาย แต่รัดกุมเพียงพอที่จะทำให้ URL ที่เป็นระเบียบเรียบร้อยของฉัน

การตัดแต่ละโฟลเดอร์ให้เหลือเพียงตัวอักษรเดียวคือ overkill และเมื่อ mc10 ชี้ให้เห็นจะเป็นการตีความอย่างกว้างขวาง ตัวอย่างเช่นฉันจะไม่เลือก 'a' สำหรับไฟล์ Javascript: ฉันจะเลือก 'b' สำหรับ "พฤติกรรม" ฉันไม่คิดว่าทั้งสองอย่างถูกต้องมากกว่านี้มันเพิ่งชี้ให้เห็นว่ารูปแบบการตั้งชื่อนั้นคลุมเครือ

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

ฉันมักจะติดกับโฟลเดอร์คู่เหล่านี้:

  • js - ไฟล์ Javascript
  • img - ไฟล์ภาพ
  • css - ไฟล์ CSS
  • lib - สคริปต์ฝั่งเซิร์ฟเวอร์ที่ไม่สร้างเอาต์พุต ห้องสมุดชั้นเรียน ฯลฯ
  • doc - ไฟล์ไบนารีเช่นเอกสาร office และ PDF ที่ไม่ได้เป็นส่วนหนึ่งของการนำทางหน้าปกติ

2

โฟลเดอร์ CSS และ JS เหมาะสำหรับแต่ละไซต์ที่อาจถูกเข้ารหัสแบบคงที่ (หรือที่รู้จักกันเฉพาะ HTML) แต่ก็ไม่เหมาะสำหรับไซต์ขนาดใหญ่ที่ใช้ CMS

CMS ใช้โฟลเดอร์ "styles" และ "images" ในโครงสร้างโฟลเดอร์ของตัวเองโดยปกติจะฝังอยู่ในไดเรกทอรีย่อย เป็นวิธีที่ดีในการจัดวางเนื้อหาและ CMS ที่ชื่นชอบเป็นจำนวนมาก

การมีชื่อโฟลเดอร์หนึ่งตัวอักษรทำให้เกิดความสับสน เมื่อดูครั้งแรกฉันจะสับสนกับความแตกต่างระหว่างภาพถ่าย ( p) และภาพ ( i) การใช้คำaว่า "แอปพลิเคชัน" ก็ดูเหมือนจะเป็นความลับ


1

การใช้โฟลเดอร์สำหรับ css และ js ต่างจากไฟล์แต่ละไฟล์ขึ้นอยู่กับขอบเขตของโปรเจ็กต์ของคุณ

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

หากคุณตัดสินใจที่จะใช้โฟลเดอร์จากนั้นอีกครั้งการตั้งชื่อแบบยาวหรือสั้นเหล่านี้เป็นการตั้งค่าส่วนตัว

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


1

คุณยังสามารถทำวิธีนี้เพื่อ

วิธีที่ 1:

  • / ผม / / ทั่วไป
  • / ผม / รูปแบบ /
  • / ผม / lib /
  • / ผม / อื่น ๆ / เอกสาร / pdf /
  • / ผม / อื่น ๆ / เอกสาร csv / /
  • / ผม / อื่น ๆ / เอกสาร / txt /

หมายเหตุ: เป็นการดีที่สุดหากแต่ละไฟล์จะได้รับการเรนเดอร์ในสรุป md5

ตัวอย่าง:

  • /i/common/9df48e2cf2d25740e4ba54e8cd73b3a3.png,
  • /i/layout/2b33962041cb835c227bba27424a28af.css,
  • /i/lib/a8a2a48ddaa95527c6d3db763e2b7809.js,
  • /i/misc/docs/pdf/68aafcfe9aa1ab7d83a6ce8df302155e.pdf

วิธีที่ 2:

  • / สินทรัพย์ / / ทั่วไป
  • / สินทรัพย์ / แม่ / template_name /
  • / สินทรัพย์ / รวม / js /
  • / สินทรัพย์ / อื่น ๆ / pdf /
  • / สินทรัพย์ / อื่น ๆ csv / /
  • / สินทรัพย์ / อื่น ๆ / txt /

หมายเหตุ: ไม่จำเป็นต้องเปลี่ยนชื่อไฟล์เป็นสตริง md5 แต่ควรเว้นช่องว่างทุกอันด้วยเส้นประ / -

ตัวอย่าง

  • /assets/common/uploads/2014/12/company-site-has-been-launched.jpg

วิธีที่ 3:

  • เว็บไซต์ / / / ไฟล์
  • เว็บไซต์ / / รูปแบบ /
  • เว็บไซต์ / / scripts /
  • เว็บไซต์ / / อื่น ๆ / เอกสาร / pdf /
  • เว็บไซต์ / / อื่น ๆ / เอกสาร csv / /
  • เว็บไซต์ / / อื่น ๆ / เอกสาร / txt /

หมายเหตุ: ใน public_html ไดเรกทอรีย่อยของโฟลเดอร์ "ทั่วไป" คุณสามารถสร้างไดเรกทอรีย่อยใหม่หลังจากนั้นและตั้งชื่อเป็น "uploads / 2014/12 / สำหรับไฟล์ที่คุณอัปโหลดเช่นเดียวกับที่ wordpress จัดการกับการอัพโหลดของคุณ


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