ساختار صفحه HTML از سه بخش اصلی تشکیل شده که براتون پایین توضیحات هر کدومشون رو قرار میدم :
این بخش حاوی اطلاعات کلی در مورد صفحه است، مانند عنوان صفحه، توضیحات صفحه، و همچنین متا تگهایی که میتوانند برای موتورهای جستجو مفید باشند.
: این بخش حاوی محتوای اصلی صفحه است، مانند متن، تصاویر، ویدیوها، و سایر عناصر HTML.
این بخش حاوی اطلاعاتی مثل حق کپی رایت، اطلاعات تماس، لینک مقالات و لینک شبکههای اجتماعی است و از اهمیت بسیار ویژهای برخوردار است.
ساختار کلی یک صفحه HTML به شکل زیر هست
#structure #web #پست_پیشنهادی
☕️ @CodeExplore
قسمت سر (head):
این بخش حاوی اطلاعات کلی در مورد صفحه است، مانند عنوان صفحه، توضیحات صفحه، و همچنین متا تگهایی که میتوانند برای موتورهای جستجو مفید باشند.
قسمت بدنه (body)
: این بخش حاوی محتوای اصلی صفحه است، مانند متن، تصاویر، ویدیوها، و سایر عناصر HTML.
قسمت پایانی (footer):
این بخش حاوی اطلاعاتی مثل حق کپی رایت، اطلاعات تماس، لینک مقالات و لینک شبکههای اجتماعی است و از اهمیت بسیار ویژهای برخوردار است.
ساختار کلی یک صفحه HTML به شکل زیر هست
:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>عنوان صفحه</title>
<meta name="description" content="توضیحات صفحه">
</head>
<body>
محتوای اصلی صفحه
</body>
<footer>
محتواهای دیگر
</footer>
</html>
#structure #web #پست_پیشنهادی
☕️ @CodeExplore
⚡18❤🔥3🔥3
💡 اجزای مختلف یک URL رو تو این قسمت باهم ببینیم🤓
👈 وقتی میگن URL، یک متن هستش که حاوی آدرس سایته
.
می دونید چرا این URL ها طراحی شده ؟
➕ این URL طراحی شدن تا جایگزین اعدادی (آدرس IP) شوند که کامپیوترها از آن ها برای ارتباط با سرورها استفاده می کنند.
➕ یا به عبارت دیگر URL فرم نوشتاری همان آدرسِ IP است. URLها همچنین ساختار فایل هر وبسایت را معرفی می کنند👌
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
❗️خیلی از ماها به شخصه همچین چیزهایی رو نمی دونیم ، فقط می دونیم که URL چیه ولی دیگه نمیریم تا فیها خالدونش رو در بیاریم ببینیم اینا چین ؟ به چه دردی میخورن ؟ چه کاربردی دارن؟ و خیلی چیزا دیگه و به همین دلیل باعث میشه عمقی یاد نگیریم مطالب رو 🤦♂
#url #structure
☕️ @CodeExplore
👈 وقتی میگن URL، یک متن هستش که حاوی آدرس سایته
.
می دونید چرا این URL ها طراحی شده ؟
➕ این URL طراحی شدن تا جایگزین اعدادی (آدرس IP) شوند که کامپیوترها از آن ها برای ارتباط با سرورها استفاده می کنند.
➕ یا به عبارت دیگر URL فرم نوشتاری همان آدرسِ IP است. URLها همچنین ساختار فایل هر وبسایت را معرفی می کنند👌
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
❗️خیلی از ماها به شخصه همچین چیزهایی رو نمی دونیم ، فقط می دونیم که URL چیه ولی دیگه نمیریم تا فیها خالدونش رو در بیاریم ببینیم اینا چین ؟ به چه دردی میخورن ؟ چه کاربردی دارن؟ و خیلی چیزا دیگه و به همین دلیل باعث میشه عمقی یاد نگیریم مطالب رو 🤦♂
#url #structure
☕️ @CodeExplore
❤🔥10⚡4🔥3
🧵 ساختار پروژه تو Go — نظم بدون دردسر 😎
وقتی یه پروژه کوچیک Go مینویسی، همهچی تو یه فایل جا میشه و دنیا قشنگه.
ولی وقتی یهکم رشد میکنه و چند تا پکیج و سرویس میچسبونیش بهش، کمکم حس میکنی داری تو آمازون گم میشی!
اینجاست که یه ساختار تمیز میتونه نجاتت بده.
گو میگه: «نه کلاس، نه فریمورک سنگین — فقط یه ساختار ساده ولی اصولی!»
🏗 ساختار پیشنهادی برای یه پروژهی واقعی Go:
🚀مسیر cmd/ — نقطهی شروع ماجرا
اینجا فایلهای main.go میره.
ممکنه چند تا اپلیکیشن داشته باشی (مثلاً یه سرور و یه worker):
📌 تو این پوشه فقط باید فایلهایی باشن که برنامه رو راه میندازن، نه منطق اصلی.
🧠مسیر internal/ — جعبهابزار محرمانه
گو یه قابلیت جالب داره: هر چی توی internal/ باشه، فقط از داخل خود پروژه قابل import کردنه.
یعنی مثل اینه که روش قفل زدی 🔒
اینجا معمولاً چیزهایی مثل:
logic اصلی برنامه
لایهی دسترسی به دیتابیس
implementation سرویسها
قرار میگیرن.
📦مسیر pkg/ — ابزارهای قابل استفاده بیرونی
اگه یه بخش از کدت خیلی جنرال و قابل reuseه، میتونی بندازیش تو pkg/.
مثلاً یه logger، یه پکیج محاسباتی، یا ابزار auth.
🛰مسیر api/ — قراردادهای ارتباطی
این پوشه جای تعریف APIهاست. مثلاً:
فایلهای .proto برای gRPC
تعریفهای OpenAPI یا Swagger
JSON schema
⚙️ مسیر configs/ — تنظیمات محیط
هر محیط یه سری تنظیم داره. dev، staging، production.
این فایلها میتونن yaml، json یا env باشن.
🛠مسیر scripts/ — ابزارهای پشتپرده
هر کاری که میخوای اتومات یا دستی انجام بدی، مثل:
✅ اجرای migration
✅بیلد(build) کردن
✅ اجرای تستها
✅پاک سازی (cleanup)
🧪مسیر test/ — تستهای جدیتر
واسه integration یا end-to-end testهایی که بزرگتر از unit test معمولین، این پوشه خیلی بهدرد میخوره.
📌 تو Go معمولا unit testها کنار خود کدها هستن (something_test.go)
ولی تستهای سیستمی رو بهتره اینجا نگهداری.
🧼 چند نکتهی طلایی
✅ ساختار پروژه هم باید همینطور باشه: شفاف، بدون پیچیدگی الکی.
✅ از همون اول نیازی نیست همهی پوشهها رو بسازی. ساختار با رشد پروژه شکل میگیره.
✅ چیزی که قرار نیست بیرون استفاده بشه، بندازش تو internal/ و راحت بخواب!
✅ هر چی ماژولارتر، بهتر: تفکیک مسئولیت باعث میشه تیم راحتتر توسعه بده، تست کنه، و تغییر بده.
حالا یه ابزار میخوام بهت معرفی کنم که این کارو برات اتوماتیک انجام میده.
https://github.com/Melkeydev/go-blueprint
#golang #project #structure
☕️Telegram | Website | Discord
وقتی یه پروژه کوچیک Go مینویسی، همهچی تو یه فایل جا میشه و دنیا قشنگه.
ولی وقتی یهکم رشد میکنه و چند تا پکیج و سرویس میچسبونیش بهش، کمکم حس میکنی داری تو آمازون گم میشی!
اینجاست که یه ساختار تمیز میتونه نجاتت بده.
گو میگه: «نه کلاس، نه فریمورک سنگین — فقط یه ساختار ساده ولی اصولی!»
🏗 ساختار پیشنهادی برای یه پروژهی واقعی Go:
myapp/
├── cmd/ → نقطهی ورود اپلیکیشن
├── internal/ → منطق داخلی، مخصوص خود پروژه
├── pkg/ → پکیجهای قابل استفاده عمومی
├── api/ → تعریف API (مثلاً protobuf یا Swagger)
├── configs/ → فایلهای پیکربندی
├── scripts/ → ابزارهای dev و deploy
├── test/ → تستهای integration
├── go.mod
└── README.md
🚀مسیر cmd/ — نقطهی شروع ماجرا
اینجا فایلهای main.go میره.
ممکنه چند تا اپلیکیشن داشته باشی (مثلاً یه سرور و یه worker):
cmd/
├── server/
│ └── main.go
├── worker/
│ └── main.go
📌 تو این پوشه فقط باید فایلهایی باشن که برنامه رو راه میندازن، نه منطق اصلی.
🧠مسیر internal/ — جعبهابزار محرمانه
گو یه قابلیت جالب داره: هر چی توی internal/ باشه، فقط از داخل خود پروژه قابل import کردنه.
یعنی مثل اینه که روش قفل زدی 🔒
اینجا معمولاً چیزهایی مثل:
logic اصلی برنامه
لایهی دسترسی به دیتابیس
implementation سرویسها
قرار میگیرن.
📦مسیر pkg/ — ابزارهای قابل استفاده بیرونی
اگه یه بخش از کدت خیلی جنرال و قابل reuseه، میتونی بندازیش تو pkg/.
مثلاً یه logger، یه پکیج محاسباتی، یا ابزار auth.
pkg/
└── logger/
└── logger.go
🛰مسیر api/ — قراردادهای ارتباطی
این پوشه جای تعریف APIهاست. مثلاً:
فایلهای .proto برای gRPC
تعریفهای OpenAPI یا Swagger
JSON schema
⚙️ مسیر configs/ — تنظیمات محیط
هر محیط یه سری تنظیم داره. dev، staging، production.
این فایلها میتونن yaml، json یا env باشن.
🛠مسیر scripts/ — ابزارهای پشتپرده
هر کاری که میخوای اتومات یا دستی انجام بدی، مثل:
✅ اجرای migration
✅بیلد(build) کردن
✅ اجرای تستها
✅پاک سازی (cleanup)
🧪مسیر test/ — تستهای جدیتر
واسه integration یا end-to-end testهایی که بزرگتر از unit test معمولین، این پوشه خیلی بهدرد میخوره.
📌 تو Go معمولا unit testها کنار خود کدها هستن (something_test.go)
ولی تستهای سیستمی رو بهتره اینجا نگهداری.
🧼 چند نکتهی طلایی
✅ ساختار پروژه هم باید همینطور باشه: شفاف، بدون پیچیدگی الکی.
✅ از همون اول نیازی نیست همهی پوشهها رو بسازی. ساختار با رشد پروژه شکل میگیره.
✅ چیزی که قرار نیست بیرون استفاده بشه، بندازش تو internal/ و راحت بخواب!
✅ هر چی ماژولارتر، بهتر: تفکیک مسئولیت باعث میشه تیم راحتتر توسعه بده، تست کنه، و تغییر بده.
حالا یه ابزار میخوام بهت معرفی کنم که این کارو برات اتوماتیک انجام میده.
https://github.com/Melkeydev/go-blueprint
#golang #project #structure
☕️Telegram | Website | Discord
🔥12⚡2