x32x01
أدارة أكتب كود
- بواسطة x32x01 ||
لو اشتغلت على مشاريع حد قبلك قبل كدا اكيد عدى عليك إن المشروع بيبقى كركبة والملفات بتكون متلخبطة
عشان كدا قررت في الموضوع ده يا صديقي اشرحلك أفضل الطرق اللي هتنظم بيها ملفاتك داخل المشروع عشان تلاقي كل حاجة بسهولة والكود يبقي نضيف وسهل فتعالي نبدأ سوا يا صديقي...
طيب تعالي نشرح التقسيم ده واحده واحده:
ـ assets: بيكون فيه الصور والأيقونات والخطوط.
ـ components: أي عنصر UI زي Button، Navbar، Footer.
ـ pages: دي الصفحات الرئيسية زي Home، About، Contact.
ـ hooks: لو عندك Custom Hooks زي useFetch أو useAuth.
ـutils: دي فايلات بيكون فيها حاجات عامه زي تواريخ و فلترة داتا أو حسابات.
ـ services: كل حاجة لها علاقة بالتعامل مع APIs.
ـ styles: ملفات CSS/SCSS عشان لو عندك ستايلات مستقله
زي كدا:
زي كدا:
زي كدا:
وبكده بدل ما كنت بكتب كل استيراد لوحده بالشكل دا :
هتكتب:
زي كدا:
وبكده نكون خلصنا شرحنا عن تنظيم الملفات في ريأكت. ولو عندك سؤال أو استفسار، اكتب في الكومنتات. ومتنساش تقول رأيك في الشرح يا صديقي
عشان كدا قررت في الموضوع ده يا صديقي اشرحلك أفضل الطرق اللي هتنظم بيها ملفاتك داخل المشروع عشان تلاقي كل حاجة بسهولة والكود يبقي نضيف وسهل فتعالي نبدأ سوا يا صديقي...
1. أول حاجة تقسيم المجلدات الأساسية:
هيكون بالشكل ده: Code:
src/
|-- assets/
|-- components/
|-- pages/
|-- hooks/
|-- utils/
|-- services/
|-- styles/
|-- App.js
|-- index.js
ـ assets: بيكون فيه الصور والأيقونات والخطوط.
ـ components: أي عنصر UI زي Button، Navbar، Footer.
ـ pages: دي الصفحات الرئيسية زي Home، About، Contact.
ـ hooks: لو عندك Custom Hooks زي useFetch أو useAuth.
ـutils: دي فايلات بيكون فيها حاجات عامه زي تواريخ و فلترة داتا أو حسابات.
ـ services: كل حاجة لها علاقة بالتعامل مع APIs.
ـ styles: ملفات CSS/SCSS عشان لو عندك ستايلات مستقله
2. خلي كل Component في فولدر لوحده
بدل ما تحط كل الكومبوننتس في مكان واحد حط كل كومبوننت في فولدر خاص بيه ومعاه ملف CSS الخاص بيه.زي كدا:
Code:
components/
|-- Button/
|-- Button.js
|-- Button.css
|-- Button.test.js
3. تنظيم الـ Pages
لما المشروع يكون كبير المفروض تعمل مجلد لكل Feature أو Section.زي كدا:
Code:
pages/
|-- Home/
|-- Home.js
|-- Home.css
|-- About/
|-- About.js
|-- About.css
4. استخدام الـIndex Files عشان تقليل الاستيرادات
لما يكون عندك components كتيرة في فولدر واحد هتعمل ملف index.js يجمع كل الاستيرادات.زي كدا:
Code:
components/
|-- Navbar.js
|-- Footer.js
|-- index.js
index.js:
export { default as Navbar } from './Navbar';
export { default as Footer } from './Footer';
Code:
import Navbar from './components/Navbar';
import Footer from './components/Footer';
Code:
import { Navbar, Footer } from './components';
5. خلي أسماء الملفات والكومبوننتس كلها تبدأ بحرف كبير PascalCase
مثلا:UserProfile.js
6. طيب لو عندك مشروع كبير؟ هتعمل Feature-Based Structure
ده بيكون مناسب أكتر للمشاريع الكبيرة بحيث تجمع كل الملفات الخاصة بـFeature معين في مكان واحد.زي كدا:
Code:
src/
|-- features/
|-- Auth/
|-- Login.js
|-- Register.js
|-- AuthContext.js
|-- Dashboard/
|-- Dashboard.js
|-- Dashboard.css
|-- Widgets/
|-- Widget1.js
|-- Widget2.js