پاسخ های ارسال شده در انجمن
-
نویسندهنوشتهها
-
علی ربیع زاده
مدیرکلدر زبان برنامهنویسی ، دو مفهوم “مفسر” و “کامپایلر” دو روش متفاوت برای اجرای کد را نشان میدهند:
مفسر:
یک مفسر برنامهای است که به صورت مستقیم دستورات نوشته شده به زبان برنامهنویسی را اجرا میکند بدون نیاز به مرحله جداگانهی کامپایل.
این برنامه به طور خط به خط کد منبع را میخواند، هر خط را به کد ماشینی یا کد میانی ترجمه میکند و آن را فوراً اجرا میکند.
مفسرها معمولاً در زبانهایی مانند پایتون، روبی و جاوااسکریپت استفاده میشوند.
آنها به طور کلی در اجرای کد نسبت به زبانهای کامپایلشده کندتر هستند زیرا نیاز به ترجمه و اجرای کد در حالت راهاندازی دارند.
کامپایلر:
یک کامپایلر برنامهای است که کد منبع نوشته شده به زبان برنامهنویسی سطح بالا را به کد ماشینی (کد دودویی) یا کد میانی قبل از اجرا ترجمه میکند.
این فرآیند یک سری مراحل ترجمه مانند تجزیهی واژگانی، تجزیهی نحوی، بهینهسازی و تولید کد را به منظور تولید کد اجرایی انجام میدهد.
بعد از اتمام فرآیند کامپایل، فایل اجرایی حاصل میتواند بدون نیاز به کد منبع اصلی یا کامپایلر اصلی مستقل از آن اجرا شود.
زبانهای کامپایلشده شامل C، C++، جاوا (که به کد بایتکد کامپایل شده و سپس در زمان اجرا تفسیر یا کامپایل میشود) و غیره میشوند.
برنامههای کامپایلشده معمولاً در اجرا نسبت به برنامههای تفسیرشده به دلیل اینکه فرآیند ترجمه کد را برای پلتفرم مقصد خاص بهینه میکند، سریعتر هستند.
به طور خلاصه، اصلیترین تفاوت بین مفسرها و کامپایلرها در زمانی است که آنها کد منبع را به کد ماشینی ترجمه میکنند: مفسرها این کار را در زمان اجرا خط به خط انجام میدهند، در حالی که کامپایلرها همه چیز را یکجا قبل از زمان اجرا انجام میدهند. هر رویکرد مزایا و معایب خود را دارد که مناسب برای انواع مختلفی از برنامهها و سناریوهای توسعه میباشد.
علی ربیع زاده
مدیرکلسلام خدمت همه دوستان برای آپدیت ubuntu خود از طریق terminal به شرح زیر عمل کنید
- از سرور یا vm خود نسخه پشتیبان تهیه کنید.
- با اجرای sudo apt update && sudo apt upgrade تمام بسته های نصب شده اوبونتو نسخه 18.04 را ارتقا دهید.
- با دستور sudo reboot command سیستم لینوکس اوبونتو را دوباره راه اندازی کنید
- ابزار بروزرسانی اوبونتو را نصب کنید ، اجرا کنید: sudo apt install update-manager-core
- مراحل ارتقا را شروع کنید ، اجرا کنید: sudo do-release-upgrade
- سرور را دوباره راه اندازی کنید ، اجرا کنید: sudo reboot
- به روزرسانی ها را تأیید کنید و مراحل را به ترتیب تا انتها بروید.
علی ربیع زاده
مدیرکلبه عناصر یا تگ هایی گفته می شود که برای تأکید بر معنایی یا معنای محتوا در صفحات وب و برنامه های کاربردی وب به کار می رود.
برای مثال در قدیم طراحان وب از div برای بخش بندی استفاده می کردند اما در html فایل هر بخش معنای خاص خودش را دارد مثلا تگ header یا footer
چرا باید از HTML معنایی(semantic) استفاده کنید؟
HTML معتبر معنایی به خوانندگان صفحه، موتورهای جستجو و سایر دستگاه های کاربر کمک می کند تا در مورد زمینه و اهمیت محتوای وب تصمیم بگیرند. برای نمایش موثر معنی محتوا، توسعه دهندگان عناصر HTML مناسب را با توجه به معنای درونی یک صفحه وب به جای اینکه چگونه به صورت بصری ظاهر می شوند، انتخاب می کنند.
پنج مزیت اصلی استفاده از HTML معنایی عبارتند از:
- کد سبک تر
- قابل نگهداری
- دسترسی راحت تر
- قابلیت مشاهده بهتر در جستجو
- آینده نگری بهتر
تگ های معنایی در سطح متن
در HTML، عناصر سطح متن مانند <em>، <cite> و <strong> دادههای معنایی را در محتوای عبارتبندی اضافه میکنند تا به وضوح تاکید بر استرس، نقلقولها و اهمیت قوی را نشان دهند.
بخش بندی معنایی در HTML
با پیشرفت HTML5، اکنون عناصر جدیدی در دسترس هستند که معنای معنایی را به کل بخشهای بخشهای صفحه وب، از جمله <nav>، <header>، <aside> و <footer> اضافه میکنند.
فراداده ساختاریافته – فراتر از HTML معنایی
چندین فناوری بر اساس HTML برای نشان دادن اشیاء، مانند رویدادها، سازمانها، محصولات و افراد، برای دستیابی به معنایی دقیقتر از آنچه که فقط با HTML قابل دستیابی است، ساخته شدهاند.
به عنوان مثال، موتورهای جستجو در حال حاضر از فرمت هایی مانند Microformats، RDFa و Microdata برای به دست آوردن داده های معنی دار از یک صفحه وب به عنوان بخشی از مرحله بعدی وب معنایی استفاده می کنند.
از دوستانی که علاقهمند هستند مفاهیم html و css رو به صورت کامل و ساختار یافته یاد بگیرند پیشنهاد می کنم از دوره های آموزشی سایت استفاده کنند.
علی ربیع زاده
مدیرکلسلام
تمامی این مراحل به ترتیب باید رو دستگاه مک با استفاده از ترمینال انجام بشود
دیسک خالی ایجاد می کند:
hdiutil create -o /tmp/Ventura -size 16384m -Volname Ventura -layout SPUD -fs HFS+J
دیسک ایجاد شده را مانت می کند:
hdiutil attach /tmp/Ventura.dmg -noverify -mountpoint /Volumes/Ventura
رسانه نصب را ایجاد می کند:
sudo /Applications/Install\ macOS\ Ventura.app/Contents/Resources/createinstallmedia –volume /Volumes/Ventura –nointeraction
جدا کردن تصویر دیسک:
hdiutil eject -force /Volumes/Install\macOS\ Ventura
فایل CDR ایجاد می کند:
hdiutil convert /tmp/Ventura.dmg -format UDTO -o ~/Desktop/Ventura
CDR را به ISO تبدیل می کند:
mv -v ~/Desktop/Ventura.cdr ~/Desktop/Ventura.iso
فایل ها را پاک می کند:
rm -fv /tmp/Ventura.dmg
علی ربیع زاده
مدیرکلبرای استخراج یک فایل فشرده چند قسمتی به یک فایل تک قسمتی در اوبونتو، می توانید از دستور زیر در ترمینال استفاده کنید:
فرض کنید فایل ها به شکل زیر هست
[scode lang=”shell”]
sample.zip.001
sample.zip.002
sample.zip.003
sample.zip.004
[/scode]
از این دستور استفاده می کنیم
[scode lang=”shell”]
cat sample.zip.* > sample.zip
[/scode]
دستور بالا همه فایل های چند قسمتی (sample.zip.001، sample.zip.002، sample.zip.003، sample.zip.004) را در یک فایل به نام sample.zip به هم متصل می کند.
هنگامی که فایل فشرده تک قسمتی را دارید، می توانید محتویات آن را با استفاده از دستور زیر استخراج کنید:
[scode lang=”shell”]
unzip sample.zip
[/scode]
علی ربیع زاده
مدیرکلسلام از گیت هاب زیر می توانید آنلاکر macos برای نصب روی vmware رو دانلود کنید.
https://github.com/DrDonk/unlocker
این آنلاکر برای vmware توی همه سیستم عامل ها هست.
تمامی مراحل داخل repo توضیح داده شده است.
علی ربیع زاده
مدیرکل- مفاهیم برنامه نویسی: اگر تا حالا با برنامه نویسی آشنایی ندارید، پیشنهاد میشود ابتدا مفاهیم برنامه نویسی را یاد بگیرید. این شامل مفاهیم مثل متغیر، تابع، آرایه، شی گرایی و … است.
- مستندات PHP: برای شروع به کدنویسی با PHP، بهتر است با مستندات PHP آشنا شوید. این مستندات شامل توضیحات کامل در مورد تمام توابع و متغیرهای PHP است.
- زبان HTML و CSS: برای ساخت صفحات وب با PHP، نیاز است که با زبانهای HTML و CSS آشنا باشید.
- برنامهنویسی شی گرا: PHP به شکل شی گرا پشتیبانی میشود. بنابراین، یادگیری برنامهنویسی شی گرا باعث بهبود قابل عملکرد در کد نویسی با PHP میشود.
- توسعه وب: برای یادگیری PHP، بهتر است با مفاهیم توسعه وب آشنا شوید. این شامل مفاهیم مثل HTTP، فرمها، جلسات، کوکیها و … است.
- پروژه های عملی: برای بهتر یادگیری، بهتر است که پروژههای عملی با PHP انجام دهید. این کار به شما کمک میکند تا با مفاهیم و تکنولوژیهای مرتبط با PHP آشنا شوید و بتوانید تجربه کسب کنید.
- ابزارهای توسعه: برای کدنویسی با PHP، بهتر است از یک ویرایشگر کد مناسب استفاده کنید. برخی از ویرایشگرهای معروف شامل PhpStorm، Sublime Text و Visual Studio Code هستند.
- جامعه PHP: PHP یک جامعه بسیار بزرگ و فعال دارد که شامل توسعهدهندگان وب، نویسندگان کتابخانهها و ابزارهای توسعه، و بسیاری دیگر از افراد مرتبط با این زبان است. شما میتوانید از منابع مختلف مانند وبسایتها، انجمنها، پادکستها، وبلاگها و شبکههای اجتماعی برای پیدا کردن پاسخ به سوالات خود، بهروزرسانی با تغییرات جدید و پیدا کردن فرصتهای شغلی استفاده کنید.
- امنیت: به دلیل اینکه PHP یک زبان برنامهنویسی مبتنی بر وب است، باید به موارد امنیتی هم توجه داشته باشید. برخی از راههای افزایش امنیت کدنویسی با PHP شامل استفاده از پارامترهای فیلتر شده برای ورودی کاربر، کدنویسی امن با استفاده از PDO برای ارتباط با پایگاه داده، و استفاده از تابعهای رمزنگاری مانند bcrypt برای رمزنگاری رمز عبور است.
- بهروزرسانی: PHP یک زبان برنامهنویسی پویا است و با گذشت زمان، تغییرات جدیدی به آن افزوده میشود. بنابراین، بهتر است بهروزرسانی با تغییرات جدید و نسخههای جدید PHP را دنبال کنید تا از قابلیتهای جدید و بهتری که این زبان ارائه میدهد، بهرهمند شوید.
علی ربیع زاده
مدیرکلسلام برای همچین چیزی باید یک رکورد داخل دیتابیس داشته باشید که اسم فایل آپلودی رو داشته باشه.
بعدش مثلا این فایل در فولدر uploads قرار داره
حالا با توجه به اینکه کجا میخواهید لود کنید و با چه تعدادی میخواهید این کار رو بکنید یک حلقه for بزاری و بعدش با دستور زیر در php مسیر مطلق رو بسازید و نهایتا در داخل src تگ imge قرار بدید.[scode lang=”php”]
$path = “/uploads/example.jpg”;
$image=basename($path);
echo ‘23 مرداد 1401 در 17:21 در پاسخ به: تفاوت اجرای دستور شبه سلکتورهای tag:attributes با tag[attributes] در چیست؟ #18688علی ربیع زاده
مدیرکلسلام عصر بخیر.
ببینید شما وقتی چیزی روی داخل پرانتز میزنید معمولا attribute رو میخواهید فراخونی کنید به مثال زیر دقت کنید.[scode lang=”html”]
[/scode]وقتی شما داخل [ ] میزنید میخواهید صفت(attribute) که داخل تگ مورد نظر تعریف شده فرا خونی کنید
[scode lang=”css”]
input[type=”text”]{
background-color:blue;
}
[/scode]ولی وقتی همچنین کدی میزنید
[scode lang=”css”]
input:focus{
background-color:red;
}
[/scode]اینجا چیز به نام صفت(attribute) تعریف نشده چون شما چیزی به نام focusتعریف نکردید و یک حالت کلی هست که برای input از پیش تعریف شده و در واقع شما میخواهید اگر این حال کلی روی تگ input اتفاق افتاده بود روش کد css اعمال بشه.
برای a هم به همین صورت هست وقتی تگ a با صفت(attribute) مثل target تعریف بشه میونید با استفاده از [ ] روی اون کد اعمال کنید و عملا چون target یک صفت هست و حالت کلی نیست پس بدون [ ] معنی نداره.
علی ربیع زاده
مدیرکلسلام دوست عزیز .امیدوارم خوب باشید. ما در کد کد html ساختار کلی به صورت سلسه مراتبی هست و عملا وقتی شما یک عنصر زیر تگ body اضافه می کنید، اون عنصر فرزند body حساب میشه.
به کد زیر توجه کنید.[scode lang=”html”]
The first paragraph.
The second paragraph.
The third paragraph.
The fourth paragraph.
The fifth paragraph.
The sixth paragraph.
The seventh paragraph.
The eight paragraph.
The ninth paragraph.
[/scode]عملا پاراگراف های 2 و 5 و 8 بک رگاندشون قرمز رنگ میشه دلیلشم اینه که خود تگ p فرزند body حساب میشه. در کل ساختار سلسه مراتبی هست یعنی تگ body زیر مجموعه و فرزند html حساب میشه، ولی چون ساختار اصلی html به این صورت هست ، توی ذهن شما به صورت پدر و فرزند در نظر گرفته نمیشه.
اگر کد زیر رو اضافه کنید می بیبنید که body زرد رنگ میشه.
[scode lang=”html”]
html:nth-child(1){
background-color:yellow;
}
[/scode]این کد یعنی اولین فرزند زیر مجموعه html بک گراندش زرد بشه و عملا body چون فرزند html هست و همین یک فرزند هست و شماره 1 هست پس زمینه زرد میشه.
علی ربیع زاده
مدیرکلسلام آقا فرید عزیز.امیدوارم خوب باشید.
اولا خوشحالم که پیشرفت دارید می کنید و همچی خوب هست.
من یک توضیح راجب هدفی که دارید خدمت شما می دهم تا بتونید به نتیجه مناسب برسید.
برای طراحی یک قالب وردپرس نیاز به یک سری مراحل رو دارید.
۱)توانایی طراحی توی فتوشاپ برای صفحات مختلف
که خب اگر مفاهیم طراحی ui و ux رو بدونید برای طراحی صفحات جذاب تر بیشتر کمکتون میکنه۲)توانایی تبدیل قالب طراحی شده به زبان html و css و java script
که خب شما باید مفاهیم کامل طراحی سمت کاربر رو بدونید تا بتونید یه سایت جذاب سمت کاربر که هم روی موبایل و هم روی دسکتاپ درست نمایش داده بشه و در مروگر های مختلف درست لود بشه.۳)تبدیل قالب طراحی شده در مرحله دوم به قالب سازگار با وردپرس
برای این قسمت نیاز هست که شما هم php و mysql و ساختار طراحی قالب وردپرس رو کامل بدونید.درکل اگر بخواهید خوب طراحی کنید و یک قالب فوق العاده طراحی کنید باید بتونید یک سایت با همون قالبی که توی ذهنتون هست طراحی کنید.
الان شما دارید دوره php و mysql و همینطور دوره html5 و css۳ رو میگذرونید.
بهترین کاری که میتونید بکنید که در پایان این دو دوره، یک طراحی توی فتوشاپ انجام بدید و بعد سعی کنید اون طراحی رو برای وب سایت خودتون کامل کد نویسی کنید.
اگر بتونید این کار رو کامل انجام بدید عملا میمونه فقط مفاهیم طراحی قالب وردپرس.
تمامی تنظیماتی که ذخیره میکنید توی قالب باید توی دیتابیس ذخیره بشه به همین دلیل نیاز به mysql هست و وردپرس هم با زبان php طراحی شده که شما باید این رو هم خوب بلد باشید
اگر بخواهیم دقیقتر بگم ،تمام کسانیکه طراحی قالب وردپرس رو کامل انجام میدن.به تنهایی توانایی کد نویسی کامل یک وب سایت رو دارن و مفاهیم پیاده سازی هر قسمت رو میدونن.وردپرس فقط به شما کمک میکنه که سری موارد طراحی سایت مثل بخش کاربران رو پیاده سازی نکنید و سریعتر سایت رو به مشتری تحویل بدید.
دلیل دیگه که نیاز هست این موارد و مفاهیم رو بلد باشید این هست که شما وقتی یک قالب رو طراحی میکنید ممکنه اون قالب یک سری قابلیت های خاص داشته باشه که با پلاگینن نتونید پیاده سازی کنید پس باید به عنوان طراحی قالب وردپرس بتونید تمامی این موارد رو داخل سایت پیاده سازی کنید.
شما هر قالب وردپرسی رو هم میتونید برای سیستم دستنویس خودتون پیاده سازی کنید. شاید یه خورده کند پیش برید اما کدنویسی زمان نیاز داره و خب تکرار هر بخش بیشتر بهتون کمک میکنه تا به هدفتون نزدیک بشید.
یک پیشنهاد هم دارم چند نمونه قالب توی فوتوشاپ طراحی و به اشتراک بگذارید تا بتونیم به لحاظ طراحی روش اگر نیاز بود پیشنهاداتی بدم.
من تلاش کردم کامل خدمت شما توضیح بدم، باز اگر سوالی باشد در خدمت شما هستم.
علی ربیع زاده
مدیرکلسلام نریمان عزیز
خوشحابم که توی دوره من شرکت کردید . یک سوال از شما داشتم شما دقیقا چند سالتون هست که بدونم که بتونم به بهترین شکل کمک کنم؟
ولی در کل میگم
اولین نکته توی بعضی از اسم ها و جاها اگر انگلیسیش رو دقیق متوجه نشدی اشکال نداره اما مفهوم رو سعی کن یاد بگیری.ببین هر سایتی که توی اینترنت هست با استفاده از زبان html و css حالت گرافیکیش طراحی شده.
html مخفف hyper text markup langauge به معنی زبان علامت گذاری متن می باشد که مثل این میمونه توی یک صفحه کتاب مشخص کنی دقیقا کجا متن هست ،
کجا شعر هست ، کجا پاورقی هست و کجا دقیقا عدد هست حالا نزدیک به این مفهوم میشه برای طراحی سایت.css مخفف Cascading Style Sheets به معنی شیوه نامه های آبشاری می باشد، مثل این میمونه که توی اون صفحه کتاب عکس یه مکان مشخص داره ، و همینطور متن یک اندازه و رنگ مشخص داره و موارد این این شکلی
علی ربیع زاده
مدیرکل[postquote quote=14120]
خدا رو شکر که همچی خوب هست.باشه همه موارد رو انجام بدید من در خدمت شما هستم.
بله با phpstorm میشه همه موارد مورد نیاز رو برطرف کرد اما webstorm مختص کسانی هست که میخوان رو طرای ui تخصصی کار کنن. من خودم تمامی موارد رو با phpstorm انجام میدم.
علی ربیع زاده
مدیرکلسلام شب شما بخیر،امیدوارم آموزش ها خوب پیش بره . کلا نرم افزارهای شرکت jetbrain جز بهترین ها هست اما خب تو ایران محدودیت مالی و خرید وجود داره .البته کرک کردنش خیلی ساده هست ، ما به دلیل محدودیت های آموزش بین الملل و غیر قانونی بودن اینو یاد ندادیم.اما پیشنهاد میدم از سایت soft98.ir دانلود کنید معمولا فعال ساز ها که قرار دادن درست کار میکنه . راجب نرم افزار های دیگه، نرم افزار زیاد هست اما به کاملی امکانات این نرم افزار نیست.
از این لینک استفاده کنید و همین ورژن سایت رو دانلود کنید و از کنار لیست دانلود گزینه آموزش نصب و فعالسازی دو تا روش گذاشته که برای روش دوم فیلم هم گذاشته اگر نتیجه نگرفتید بگید تا راهکار دیگه بگم خدمت شما.علی ربیع زاده
مدیرکلسلام آقای فرید عزیز
چند تا نکته رو خدمت شما بگم. یکی اینکه توی نام گذاری فایلها از کاراکتر های خاص مثل & و @ و فاصله استفاده نکنید.
معمولا نامگذاری باید با – یا _ باشد برای مثال
style-1.css
style1.css
style_1.css
به همین ترتیب برای دیگر فایل ها.
درسته اگر فاصله استفاده کنیم نام فایل شما انکد(encode) میشه ولی توی نامگذاری استفاده نکنید چون توی بعضی از سرور ها دچار مشکل میشید و همینطور جز قواعد استاندارد نامگذاری نیست.راجب کد شما چند تا نکته رو رعایت کنید و به ترتیب زیر کد بزنید.
[scode lang=”html”]
[/scode]این کد رو کپی کنید و مقدارید فایل رو عوض کنید فقط دقت کنید برای فایل mp3 مقدار type برابر audio/mpeg باشد. و برای فایل های ogg مقدار type برابر audio/ogg باشد.
اگر همچنان نتیجه نگرفتید از این مدل کد استفاده کنید.
[scode lang=”html”]
[/scode]اگر به control نیاز ندارید از کدهای بالا حذف کنیدو تست بگیرید.
اگر بعد از تعریف type نتیجه نگرفتید لطفا مدل و ورژن مرورگر ، دستگاهتون و سیستم عامل رو بگید.
-
نویسندهنوشتهها