درود بر شما


ضمن عرض خیرمقدم ، از اینکه این وب سایت را مورد بازدید قرار می دهید ، سپاسگزارم.


در دنیای مدرن امروزی که هر روز شاهد ظهور فناوری های نو در عرصه های مختلف علوم مهندسی هستیم بی شک فناوری اطلاعات دارای اهمیت ویژه ای میباشد و پیشرفت های علوم دیگر به نحوی وابسته به این فن آوری میباشد.
از این رو گسترش و پیشرفت این فناوری بسیار چشمگیر و دارای شاخه ها و زیرشاخه های متعددی میباشد . در این میان علوم مهندسی به ویژه در امور طراحی و محاسبات پیچیده عددی و همچنین در بخش اقتصاد ، حسابداری و فروش و بازاریابی سهم عمده ای در بهره برداری از مزایای این فناوری را به خود اختصاص داده اند .
ولی در سالهای اخیر این فناوری پا به عرصه روابط اجتماعی و علوم انسانی نهاده است و بستری مناسب برای معرفی و ارایه عقاید و تفکرات تک تک افراد جامعه جهانی ایجاد نموده است .

team work

فعالیت ها :

1- تولید نرم افزار و برنامه نویسی سیستم های مالی

2- برنامه نویسی سیستم های ERP

3- طراحی و پیاده سازی وب سایتهای سازمانی ، شرکتی ، فروشگاهی و شخصی

4- تولید اپلیکشن های گوشی های هوشمند

5- طراحی UI/UX

نقد و بررسی


picture

بازار تولید نرم افزار و چالش های پیش رو

1390/1/25

پر واضح است که نرم افزار ، از الزامات پایه ای صنعت انفورماتیک میباشد که تا دهه های هفتاد تحرکی در شکوفایی این صنعت پایه ای در کشور دیده نمیشد و اندک فعالیت انجام شده مصروف فارسی سازی نرم افزارها ؛ بطور ویژه کلمه پردازها ؛ میشد . در اواسط دهه هفتاد و با گسترش استفاده از رایانه های شخصی در بنگاه های بزرگ اقتصادی و از همه مهمتر دوایر دولتی و بانکی ،ناگهان خلاء بزرگی در عرصه تولید نرم افزارهای ایرانی بوجود آورده و فارغ التحصیلان دانشگاهی علوم کامپیوتر ،نا آشنا با سیستم های مالی ، اداری ، حسابداری صنعتی و ... و ناآشنا با فعالیت های گروهی بر مشکلات این صنعت نوظهور دامن میزد. ولی پس از اندک زمانی برنامه نویسی ؛ به ویژه در حوزه های مالی ؛ رشد قابل توجهی یافت بطوریکه تیم های حرفه ای از برنامه نویسان پا به عرصه تولید نرم افزار نهادند که اغلب تحصیلات و یا فعالیتی غیر مرتبط باامور کامپیوتر داشته اند که این نقطه عطفی در این صنعت بشمار میرود. سوالی که مطرح میشود چرا نقطه عطف ؟ شاید یکی از دلایل آن ، رفع و رجوع نیازهای خود افراد با استفاده از کامپیوتر در حوزه فعالیت خود بوده است و این امر باعث گسترش سریع این فناوری در جامعه ایران گردید.از سویی ورود این فناوری به عرصه های مختلف مشاغل و علوم و فنون ،باعث ایجاد زمینه ای بسیار وسیع از کاربردهای این تکنولوژی گردید و حرفه برنامه نویسی را با تعدد تخصص مواجه گردانید و همین امر باعث سردرگمی برنامه نویسان در انتخاب حوزه های تخصصی فعالیتشان گردیده است. آیا باید به این علم به عنوان حرفه توجه نمود یا نه ، صرفا یک مهارت محسوب میگردد ؟ بگذریم از این موضوع که در جامعه دانشگاهی ابتدا به عنوان علوم پذیرفته شد ، بعد به مهندسی تغییر ماهیت داد و هر از گاهی زمزمه هایی از قرار گرفتن در گروه علوم پایه نیز به گوش میرسد. بقول یکی اساتید برنامه نویسان جزو معدود افراد جامعه هستند که دایرالمعارف مشاغل هستند. از طرفی در این آشفته بازار برنامه نویسی ، موضوعی که مشهود است گسترش تولید نرم افزارهایی است که صنعت مرتیط با آن در کشور رو به رشد میباشد. شما تصور کنید چه تعداد صنعت و تجارت در کشورمان وجود دارد که در حال پیشرفت میباشد. اما اکنون بعد از گذشت سه دهه از ظهور این فناوری در عرصه صنایع کشور ، حرکت به سمت و سوی استانداردهای جهانی در زمینه های تولید ، ارایه ، پشتیبانی و ... کاملا مشهود میباشد. با این حال پیشرفت این صنعت در کشورمان ، در قیاس با کشورهایی مانند هند و چین بسیار ناچیز میباشد که این موضوع ارتباط مستقیم با سیاست های خارجی دولت و جذب سرمایه گذاران خارجی دارد. از اینرو ما شاهد اشباع شدن تولیدات در حوزه های مالی و از طرفی خلاء تولید نرم افزار در سایر حوزه ها میباشیم.

picture

اینترنت و نقش آن در توسعه اقتصاد کشور

1391/6/31

بیش از دو دهه از حضور شبکه جهانی اینترنت در ایران میگذرد و در این مدت همواره از سیاست گرفته تا اقتصاد و فرهنگ و روابط اجتماعی و غیره را مورد چالش قرارداده است. از بسترهای سخت افزاری مورد نیاز گرفته تا ارایه خدمات توسط سازمان صدا و سیما یا وزارت ارتباطات ، اعمال فیلترینگ و نبود قوانین قضایی برای برخورد با مجرمین سایبری و بحث حفظ حریم خصوصی افراد جامعه و بسیار موارد دیگر ، با مشکلات و کاستی های قابل توجهی دست به گریبان بوده است. صحبت در مورد اینترنت و موضوعات مرتبط با آن بسیار است که مستلزم زمان و نظرات کارشناسان حوزه های گوناگون میباشد که خارج از این مجال میباشد. لذا به کوتاه نطری به نقش اینترنت در توسعه اقتصاد کشور می اندازیم. اگر به روند رشد تجارت الکترونیک در سال های اخیر نگاهی بیاندازیم شاهد جهشی بزرگ در این عرصه میباشیم. گسترش دسترسی به اینترنت در کل کشور و همچنین ورود گوشی های هوشمند به بازار ایران ، زمینه مناسبی را جهت رشد و شکوفایی تجارت الکترونیکی ایجاد نمود و همین امر باعث بر پایی وب سایتهای فروشگاهی و خدماتی و پایانه های بانکی بی شماری در فضا مجازی گردید. حال سئوال این است آیا این گسترش با رشد اقتصادی کشور همگون و متناسب میباشد؟ آیا این گسترش با تولید ناخالص ملی متناسب است؟ اینها سوالاتی است که بزرگان اقتصاد باید پاسخی مناسب برای آنها داشته باشند. ین موضوع قابل تامل است که چند درصد از تولیدکننده های داخلی توانسته اند به سطحی از شکوفایی برسند که بخواهند محصولات خود را از طریق فضای مجازی معرفی کرده و یا بفروش برسانند. فضای مجازی با این پتانسیل چقدر موفق به جذب مخاطبان جدید از هر دو گروه خریدار و فروشنده شده است. با راه اندازی هر فروشگاه اینترنتی به مشتریان خرید از فضای مجازی افزوده نمی شود بلکه فروشگاه های جدید با مشتریان فروشگاه های قبلا راه اندازی شده ، سهیم میشوند. فعالیتهای تجاری در فضای مجازی ، چه میزان از نرخ بیکاری در جامعه را کاهش داده است. اگر در اینترنت گشتی بزنید با کسب و کارهای کاذب و بعضا عجیبی برخورد میکنید که در حال تبادلات مالی هستند ولی نمی توان نام کسب و کار بر آنها نهاد. بنظر میرسد تا رسیدن به یک فضای مجازی تجاری مناسب که مانند یک کسب و کار در عالم واقعیت ، شفاف و متعهدانه باشد راه زیادی پیشرو میباشد و اگر مشکلات اقتصادی در عالم واقع حل نگردد ، نباید انتظار تجارت الکترونیکی سالم و پر رونق را داشت.

picture

شبکه های اجتماعی ، چهارچوبی امن یا پر مخاطره

1395/11/28

شبکه های اجتماعی به مجموعه ای از گرافهایی گفته می شود که هر نود آن متشکل از یک فرد یا سازمان میباشد و یالهای آن ارتباط و تعامل بین این افراد یا سازمانها را مشخص می نماید. از طرفی هر فضایی که عامل تسریع در ایجاد و شکل گیری شبکه های اجتماعی می شوند را یک سرویس شبکه اجتماعی نامگذاری نموده اند. حال اگر بستر ارتباطی این سرویس ها ،اینترنت باشد مفهوم شبکه های اجتماعی در فضای مجازی شکل می گیرد. این نوع از شبکه های اجتماعی در سالهای اخیر به سرعت گسترش یافته و بین احاد جامعه بخصوص جوانان از محبوبیت زیادی برخوردار شده است. برای برخی نیز امکان ایجاد کسب و کار و حصول درآمد را فراهم نموده است. تشکیل گروه های مختلف خبری ، علمی و حتی عقیدتی ، جذابیت ویژه برای مخاطبان در پی داشته و این امر موجب پدید آمدن سوپرگروه هایی با تعداد کثیری از اعضا شده است. همانطور که در ابتدای مطلب گفته شد بستر ارتباطی در شبکه های اجتماعی مجازی ، اینترنت میباشد. ولی جهت دسترسی به اعضا و ارسال و دریافت پیامها نیاز به نرم افزارها و سرویس دهنده های این خدمات میباشد. در همین راستا شرکتهای بزرگی شروع به سرمایه گذاری و فعالیت در این زمینه نموده اند. کاربران این سرویسها هم با توجه به امکاناتی که این شرکتها در اختیار آنها قرار می دهند مناسب ترین نرم افزار را انتخاب نموده و با ایجاد گروه های مختلف شروع به فعالیت می نمایند. نکته بسیار حایز اهمیت ذیل مفاهیم گفته شده در این است که نظارت بر محتوای این نوع از شبکه های اجتماعی عملا از دست دولتها و دستگاه های حاکم خارج گشته و فقط قوانین شرکت فراهم کننده سرویس بر این شبکه ها حاکم میباشد. همین عامل سبب نگرانی دولتمردان حکومتهای غیر دمکراتیک و تمامیت خواه و اغلب ایدوئولوک گردیده و اغلب مانع فعالیت های این شرکتها در کشورهای مطبوع خود می گردند. متاسفانه کشور ما هم از این قاعده مستثنی نیست و شگفتا علما دینی نیز بشدت مخالف گسترش فعالیتهای این شبکه ها میباشند که خود جای تامل و موشکافی میباشد.

team work

یاداشتها


icon

کتابخانه ای کوچک ولی به وسعت دنیا

ری اکت جی اس یکی از کتابخانه های جاوا اسکریپت میباشد ، که توسط شرکت فیسبوک مورد توسعه قرارگرفته و خیلی سریع در بین توسعه دهندگان و برنامه نویسان مورد استقبال قرار گرفت. در این نوشتار به بررسی علت رشد سریع استفاده از این کتابخانه در بین توسعه دهندگان می پردازیم. بیشتر کارشناسان و برنامه نویسان ، جهت توجیه عملکرد ری اکت ، به مقایسه آن با انگولار جی اس و دیگر فریمورکهای جی اس میپردازند که معتقدم ملاک مناسبی برای سنجش نمیباشد. به هرحال یک فریمورک بعنوان یک راه حل جامع ، طیف وسیعی از امکانات و راهکار ها را در اختیار توسعه دهندگان قرار میدهد و قابل قیاس با یک کتابخانه از جاوا اسکریپت نمیباشد. بنظر من دلیل استقبال برنامه نویسان از ری اکت در این نکته نهفته میباشد که ری اکت یکی از بهترین ابزارهای توسعه دهندگان برای عبور از برنامه نویسی شی گرا به سوی برنامه نویسی تابع محور میباشد. ری اکت جی اس یکی از بهترین ابزارهای جاوا اسکریپت برای پیاده سازی کدها در پارادایم تابع محور میباشد و هر روز توسعه دهندگان مباحث تکمیلی و موردنیاز را به آن الحاق میکنند و معتقد هستم در زمانی نه چندان دور ری اکت تبدیل به یک فریمورکی قوی در دنیای برنامه نویسی خواهد شد.

icon

نصب کتابخانه های مورد نیاز NodeJS

در ابتدا با استفاده از دستورات خط فرمان نرم افزار مدیریت پکیج های جاوا اسکریپت مانند npm و یا yarn چارچوب و ابزارهای مورد نیاز ری اکت را تحت عنوان یک پروژه نصب می کنیم. سپس به مسیر پروژه رفته و سرور مجازی جهت مشاهده پروژه در مرورگر وب را اجرا میکنیم.حالا نگاهی اجمالی به ساختار پروژه ایجاد شده می اندازیم. در مسیر اصلی پروژه پرونده ای تحت عنوان package با فرمت json وجود دارد که در آن فهرستی از کتابخانه های مورد نیاز پروژه قرار گرفته که مفسر ری راکت جهت اجرای کدهای شما از آن بهره میگیرد. این کتابخانه ها در فولدری تحت عنوان node_modules قرار دارد.از دیگر فولدرهای ایجاد شده در مسیر پروژه ، فولدر src است که محتوای آن کدهای نوشته شده در ری اکت و ملحقات آن میباشد. فولدر public هم که در مسیر پروژه قابل مشاهده میباشد شامل منابع موردنیاز خارج از ری اکت و موردنیاز در کدهای html میباشد.
npx create-react-app my-app cd my-app npm start

icon

Virtual DOM

دام ، تکنولوژی ای میباشد که جاوا اسکریپت جهت دسترسی به تگ های یک سند اچ تی ام ال از آن استفاده مینماید. در ابتدا صفحه وب طی فرآیندی بررسی و ساختار درختی المنت ها و جایگاه آنها ایجاد میشود. در مرحله بعدی جاوا اسکریپت با توجه به رویدادها ، تغییرات را بر دام اعمال نموده و متعاقبا بر سند اچ تی ام ال منعکس میگردد.حال نگاهی به عملکرد ری اکت در اجرای پروسه فوق می اندازیم. توسعه دهندگان ری اکت جهت افزایش سرعت و همچنین راندمان آن از راهکاری به نام Virtual DOM بهره گرفته اند ، بدین صورت که یک کپی از دام در حافظه ایجاد میکند و تمام تغییرات ابتدا در آن اعمال میشود و سپس دیفرانسیل آن را با دام اصلی بدست آورده و تغییرات در دام اصلی و به تبع آن در سند اچ تی ام ال اعمال میشود. دقت کنید فرآیند بروزآوری دام فقط بروی تگهای تغییر کرده و تگهای زیر مجموعه آن اعمال می گردد.

icon

مفهوم JSX چیست؟

بطور کلی JSX گرامر افزوده شده به جاوا اسکریپت می باشد که در آن میتوانید کدهای اچ تی ام ال را مستقیما در جاوا اسکریپت استفاده نمایید. البته این گرامر در مرورگرهایی که با نسخه ES5 اجرا میشوند سازگار نمی باشد و برای رفع این مشکل ابتدا توسط مفسر Babel به کدهای قابل اجرا در ES5 کامپایل شده و سپس اجرا میشوند . در این فرآیند کدهای اچ تی ام ال به جاوا اسکریپت ترجمه می شوند . در ری اکت نیز از همین تکنیک ، استفاده شده است . یعنی یک تگ که میتواند در درون خود ، تگهای مختلفی را شامل شود ، بصورت کدهای اچ تی ام ال در Virtual DOM ایجاد شود و در نهایت رندر و در دام اصلی اعمال گردد.
const element = <div><h1>Hello world</h1></div> ; ReactDOM.render( element, document.getElementById('root') );

icon

لذت برنامه نویسی در پی اچ پی

لاراول فریمورکی اپن سورس با زبان برنامه نویسی پی اچ پی توسط تیلر اتول بر پایه فریمورک سیمفونی توسعه یافت و مورد استقبال توسعه دهندگان وب قرار گرفت. معماری پیاده شده در این فریمورک MVC میباشد. برخی از امکانات لاراول توسط ابزار مدیریت پکیج قابل نصب و استفاده می باشد. همچنین از ابزاری تحت عنوان Artisan در خط فرمان استفاده می کند که در ایجاد و اجرای برخی از تسهیلات این فریمورک نقش بسزایی را ایفا می نماید. استفاده از لاراول بسیار ساده و روان میباشد و در واقع پی اچ پی را به شکل ساده و روان در اختیار کدنویسان قرار می دهد. در این سلسله مباحث قصد دارم به برخی از این مزایا و امکانات اشاره کوتاهی نمایم امیدوارم برای مخاطبان این وب سایت مفید واقع گردد.

icon

بستر مورد نیاز

راه اندازی لاراول مانند هر فریم ورک دیگر ، نیاز به ایجاد بستر نرم افزاری خاص خود را دارد. از جمله اساسی ترین این بستر ، پی اچ پی میباشد.به غیر از آن نصب ملحقات آن هم ؛ Extension ؛ ضروری میباشد. نگارش پی اچ پی باید 7.2.5 و بالاتر باشد. اکستنشن ها BCMath ، Ctype ، Fileinfo ، JSON ، Mbstring ، OpenSSL ، PDO ، Tokenizer ، XML باید نصب و فعال باشند. برای نصب لاراول و ملحقات آن ؛ dependencies ؛ از نرم افزار Composer استفاده می شود. سپس دستورات لاراول در خط فرمان قابل دسترس می باشد. برای ایجاد یک پروژه جدید از دستور laravel new myproject استفاده میکنیم. پس اتمام اجرای دستور مذکور ، دایرکتوری تحت عنوان myproject ایجاد میگردد. ؛ دقت کنید بهتر است عنوان پروژه را با حروف کوچک الفبای انگلیسی وارد نماییم. ؛ وارد دایرکتوری ایجاد شده می شویم و برای اجرای وب سرور لاراول از دستور serve از مجموعه دستورات artisan استفاده می کنیم. پس از اجرای دستور فوق ، آدرس و پورت سرور نمایش داده می شود. با بروزر خود وارد آدرس مذکور می شوید تا هوم پیچ پروژه نمایش داده شود.
composer global require laravel/installer laravel new myproject php artisan serve

icon

ساختار دایرکتوری

بطور پیش فرض لاراول ، بعد از ایجاد پروژه ، یکسری فولدرها و فایلهایی را در دایرکتوری پروژه ایجاد می کند تا توسعه دهنده ها را به مسیرهایی دسته بندی شده از معماری MVC هدایت کند که مناسب برای هر گونه پروژه های کوچک و بزرگ میباشد. در این یاداشت به بررسی برخی از اساسی ترین ساختارها ، در پروژه های لاراول می پردازیم. دایرکتوری App محل نگهداری فولدرها و فایلهای اصلی و مهم پروژه میباشد. دایرکتوری Bootstrap محل نگهداری فایل app.php که همان بوت استرپ فریمورک میباشد. همچنین از این فولدر جهت کش ؛ Cache ؛ فایلهای ایجاد شده توسط فریمورک جهت دستیابی به بازدهی بالا و بهینه سازی اجرای فریمورک استفاده میگردد. دایرکتوری Config نیز برای نگهداری فایلهای مربوط به پیکربندی های سیستم استفاده می گردد.از جمله تنظیمات فریمورک ، دیتابیس ، ایمیل و غیره . دایرکتوری Database محل ذخیره فایلهای migrations و factories و seeds میباشد که شامل دستوالعمل های مربوط به بانک اطلاعاتی می باشند. دایرکتوری Public محل قرارگرفتن فولدرها و فایلهای CSS و JS و فونتها و تصاویر و متعلقات پروژه میباشد. دایرکتوری Routes هم شامل فایلهای web.php, api.php, console.php است که وظیفه مسیریابی در متدهای استفاده شده در پروژه را بعهده دارد. دایرکتوری Storage محلی مجزا برای حفظ فایلهای session و روتهای کامپایل شده توسط فریمورک ، لاگ فایلها و غیره می باشد. دایرکتوری Tests محل نگهداری فایلهای مربوط به تستهای اتوماتیک میباشد. دایرکتوری Vendor مربوط به اطلاعات مورد نیاز Composer جهت نصب ملحقات لاراول می باشد. دایرکتوری Resources محل نگهداری ویوها و تعلقات کامپایل نشده ؛ raw ؛ مانند Less ، Sass ، Javascript می باشد. همچنین فایلهای مربوط به زبانها نیز در این دایرکتوری ذخیره می شوند.

icon

تغییر سیاست مایکروسافت

پس از سالها کشمکش میان مایکروسافت و شرکتهای توسعه دهنده نرم افزار و تغییر رویکرد اکثر توسعه دهندگان نرم افزار به پلتفرم هایی به غیر از محصولات مایکروسافت و همچنین مورد اقبال قرار گرفتن توسعه متن باز ، مایکروسافت را وادار به بازنگری سیاستهای انحصار طلبانه خود نمود. سیاستگذاران مایکروسافت به خوبی به این موضوع پی بردند که در حال کنار گذاشته شدن از بازار جهانی نرم افزار توسط رقبا و مشتریان این بازار هستند. از این رو در سالهای اخیر شاهد تغییری شگرف در رویکرد این شرکت بزرگ در تولید نرم افزارها و ارایه سرویسهای جدید بوده ایم. تولید برخی نرم افزارها با قابلیت اجرا در پلتفرمهای مختلف ، ارایه محصولاتی بشکل متن باز ، همگی نشان دهنده تحولی عظیم در خط مشی مدیران این شرکت می باشد. در این بین دات نت Core ، یکی از شاخص های مهم در این تحول می باشد که قصد دارم در این سری از یاداشتها به بررسی مزایای آن بپردازم.

icon

اندروید چیست؟

اندروید یک سیستم عامل متن باز بوده که کدهای اصلی آنرا ، توسعه دهنده آن ؛ گوگل ؛ در اختیار عموم قرار داده است. این بدین معناست که هر کسی میتواند با توجه به سخت افزار خود تغییراتی را در آن اعمال کند که کاملا سازگار با آن به خوبی عمل نماید. همین امر موجب شده است این سیستم محبوبیتی خاص در بین کاربران بدست آورد و با بیش از دو میلیارد کاربر ، در رده پر کاربرترین سیستم عاملهای دنیا ، قرار گیرد. این سیستم عامل بر پایه لینوکس و برای دستگاه های موبایل و تبلت طراحی و ساخته شد ولی به مرور از این سیستم در لوازم خانگی از قبیل تلویزیون و ... استفاده گردید. اندروید مانند دیگر سیستمهای عامل دارای نسخه های مختلفی میباشد. Android Go یا Android One یک نسخه از اندروید می باشد که بسیار سبک و ساده میباشد که معمولا در دستگاه هایی با منابع محدود استفاده می شود. برخی از شرکتها از اندرویدهایی استفاده می کنند که خارج از اکوسیستم گوگل میباشد. در این سلسله یاداشتها ، قصد داریم به بررسی برنامه نویسی اپلیکیشن های اندروید ، بپردازیم.

icon

مفهوم سئو

سئو به مجموعه فعالیتهایی مرتبط با وب سایتهای اینترنتی گفته می شود که باعث کسب رتبه ای مناسب در نتایج حاصله از موتورهای جستجو در اینترنت می شود. در بیان ساده وقتی مطلبی را در گوگل جستجو می کنیم ، گوگل بهترین نتایج را مطابق با نیاز شما ، فهرست بندی نموده و به شما نمایش می دهد. پیشنهادهای ابتدای فهرست گوگل با خواسته شما تطبیق بیشتری دارد و هر چه به پایین این فهرست حرکت کنیم این تطبیق کمرنگ تر میگردد. ولی گوگل چطور این فرآیند را مدیریت میکند؟ موتورهای جستجوی دیگری مانند Bing , AOL , DuckDuckGo , ASK و غیره چگونه عمل میکنند؟و در نهایت ما چطور می توانیم نام سایت خود را در صدر فهرست جستجوهای مرتبط قرار دهیم؟ پاسخ این سوالات را می توانید در فرآیند سئو بدست آورید. فرآیندی که شامل چند رویه و دستوالعمل نسبتا ساده می باشد. ولی حصول نتیجه مطلوب کمی زمانبر میباشد و باید صبور بود.

icon

تاثیر سئو در کسب و کار

در عصر حاضر ، اینترنت نقش بسزایی در امر تجارت دارد و بستر مناسبی برای ایجاد کسب و کارهای کوچک و بزرگ میباشد. در این عرصه ، دیده شدن توسط مخاطبین یکی از موثرترین عوامل در رشد اقتصادی یک کسب و کار اینترنتی میباشد. حال از طرفی دیگر ، افراد جامعه با مراجعه به موتورهای جستجو ، به دنبال کالا یا خدمات موردنیاز خود می گردند. بیش از 80 درصد افراد نتایج صفحات اول و دوم را بررسی میکنند. در صورت عدم حصول نتیجه مطلوب ، کاربران اقدام به تغییر کلمات مورد جستجو مینمایند. از طرفی دیگر کاربران تمایل دارند از موتور جستجویی استفاده نمایند که نتایج آن منطبق تر و نزدیکتر به مطلب مورد نظر آنها باشد. بطور مثال در ایران حدود 87.7 درصد مردم ، از گوگل برای جستجوی مطالب خود استفاده می نمایند. با توجه به مطالب ذکر شده ، شناخت پارامترهای موثر در جستجوهای گوگل به ما کمک می کند تا کسب و کار اینترنتی خود را با رعایت چارچوبهای مد نظر گوگل ، چنان بازطراحی نماییم که در صدر نتایج جستجوی گوگل قرار گرفته و بالطبع نرخ بازدید از وب سایت خود را افزایش داده و همین امر باعث رشد تعداد مشتریان بالقوه کسب و کار ما ، میگردد. گوگل برای جستجو و فهرست بندی وب سایتها ، از الگوریتم های خاص خود ؛ که اطلاعات آن محرمانه می باشد و با توجه به سیاستهای این کمپانی متغیر و قابل پیش بینی نمی باشد ؛ استفاده می نماید ولی اسلوب و دستورالعمل هایی را جهت کسب رتبه های مناسب ، منتشر مینماید ، که با رعایت این قوانین و خط مشی ها ، میتوان جایگاه وب سایت مان را در جستجوهای گوگل ترفیع داد و به صدر صفحات اول نتایج صعود کرد.

icon

شاخص های موثر

در ابتدا گوگل با استفاده از ابزار هوشمند خود ؛ معروف به Googlebot ؛ شروع به شناسایی و بررسی وب سایتها در تمام سرویس دهنده های وب در کل دنیا نموده و اطلاعات صفحات وبسایت های گوناگون را ؛ با ابزارهای معروف به Webcrawler ؛ جمع آوری و به سرورهای گوگل ارسال مینماید. سپس این اطلاعات با استفاده از الگوریتم هایی خاص در بانک اطلاعاتی گوگل ایندکس میگردد. این فرآیندها بشکل دایمی و متناوب انجام میگردد و اطلاعات وب سایتها بارها و بارها بررسی و شاخص گذاری می گردند. از عوامل موثر بر شاخص گذاری میتوان به عناوین زیر اشاره کرد: 1- بهینه کردن آدرس (URL) تمام صفحات سایت 2- کلمات کلیدی مناسب (Keyword Research) 3- بهینه سازی عنوان وب سایت یا Meta title 4- رعایت ساختار در نوشتار متن (بهینه‌سازی H1 و H2 و H3) 5- بهینه‌سازی انکرتکست‌ها 6- بهینه سازی توضیحات متا یا Meta Description 7- رعایت کردن چگالی کلمات کلیدی 8- لینک‌سازی داخل سایت 9- استفاده کردن از کدهای نشانه‌گذاری اسکیما 10- بهینه سازی تصاویر سایت 11- ریسپانسیو بودن سایت یا هماهنگی با گوشی‌های موبایل 12- تهیه گواهی SSL

icon

نکات مهم درباره URL

یک وب سایت متشکل از صفحات بهم پیوسته ؛ حاوی اطلاعات ؛ میباشد. هر صفحه ای دارای URL مختص خود میباشد. استفاده از URL های خوانا ؛ کلمات مرتبط با موضوع صفحه ؛ در امر سئو موثر میباشد. قرار دادن کلمات کلیدی در آدرس صفحات وبسایت از موارد مهم دیگر میباشد. استفاده از آدرسهای متعدد برای یک محتوا اصلا توصیه نمی گردد. تا حد امکان از پارامترهای داینامیک در آدرس ها ، استفاده نکنید. آدرس های کوتاه تر بهتر از آدرس های طولانی میباشد. طول آدرسها نباید بیشتر از 100 کاراکتر باشد.آدرس URL را با عنوان یا همان title صفحه هماهنگ کنید. از قرار دادن حروف اضافه در آدرس سایت حتی المقدور بپرهیزید. از کاراکترهایی که نیاز به Encoding دارند در آدرس صفحات استفاده نکنید. تعداد ریدایرکت ها را به کمتر از دو مورد محدود کنید. در آدرس ها از اسلش ( / ) های کمتری استفاده شود.آدرسها را رمز گذاری ننمایید و از کاراکترهای بزرگ الفبای انگلیسی و یا ترکیب از آنها استفاده نشود. استفاده بیش از حد از کلمات کلیدی در آدرسها توصیه نمی گردد. برای جدا نمودن کلمات از علامت دش (-) استفاده شود.

icon

تحقیق کلمات کلیدی

کلمات کلیدی همان کلماتی هستند که کاربران اینترنت جهت جستجو مطلبی خاص از این کلمات در موتورهای جستجو استفاده می کنند. بطور مثال شما قصد خرید یک کتاب با عنوان مزرعه حیوانات نوشته جرج اورول را دارید. با مراجعه به گوگل و استفاده از کلماتی مانند : فروشگاه آنلاین کتاب ، مزرعه حیوانات ، جرج اورول و اشکالی متفاوتی از این باب ، به هدف خود می رسید. از سویی دیگر صاحبان وب سایتها با استفاده از کلمات کلیدی همین درخواست سعی میکنند سایت خود را در صدر فهرست نتایج گوگل قرار داده تا شما را به بازدید از سایت خود ترقیب نمایند. پس بدست آوردن فهرستی از کلمات کلیدی که دارای بیشترین جستجو در حوزه فعالیت وب سایت شما را داشته اند ، امری بسیار مهم و تاثیر گذار در ارتقا وب سایت شما در نتایج جستجوی گوگل می باشد. استفاده از ابزار Google Keyword Planner برای بررسی و تهیه فهرستی از کلمات کلیدی مرتبط با کسب و کار شما ، بسیار مفید خواهد بود.همان‌طور که مشخص است ، این ابزار متعلق به گوگل است، در‌واقع Keyword Planne قسمتی از امکانات Google Adword است که برای تبلیغات در گوگل مورد استفاده قرار می‌گیرد. این ابزار، میزان جستجوی هر کلمه‌ای را که بخواهید، به شما نمایش می‌دهد، ولی توجه نمایید که Keyword Planner فقط و فقط تعداد جستجو‌ها را نشان می‌دهد. یعنی اگر شخصی عبارتی را در موتور جستجوی گوگل ، جستجو کند، این جستجو در Keyword Planner جزو جستجو‌ها محسوب می شود، حتی اگر شخص روی هیچ لینکی کلیک نکند. بیشترین کاربرد گوگل پلنر در درک میزان جست و جوی کلمات ، برای سایت ها و فروشگاه های اینترنتی است که می خواهند بدانند برای جذب ترافیک هدفمند یا همان تعدد بازدیدکننده ، از چه کلمه ها و عبارت هایی باید در بهینه سازی سایتشان استفاده کنند. از ابزارهای دیگر استخراج کلمات کلیدی می توان از Google Trends ،Microsoft Bing Ads Intelligence نام برد که استفاده از آنها می تواند بسیار مفید باشد.

icon

تگ title

تگ عنوان جهت نمایش عنوان وب سایت در سربرگ بروزر استفاده می شود. وقتی مطلبی را در گوگل جستجو می کنید همین عنوان وب سایت ها در نتایج نمایش داده می شوند. همین امر نشان دهنده اهمیت عنوان وب سایت در رویه های سئو می باشد. تا جای امکان سعی کنید کلمۀ کلیدی هدف و مشخصه های مهم را در عنوان صفحه قرار دهید. توجه داشته باشید که این کاراکتر های عنوان نباید بیشتر از 55 کاراکتر باشد.
<html> <head> <title>Website Title</title> </head> <body> </body> </html>

icon

بهینه‌سازی H1 و H2 و H3 و انکرتکست‌ها

در تولید محتوا سعی نمایید مطلب مورد نظر را با توجه به اهمیت موضوعات و زیر مجموعه مطالب ، با تگهای H1 و H2 و ... عنوان بندی نمایید. این امر باعث میگردد تاکید بر مطالب یک متن برای گوگل و همچنین بازدیدکنندگان وب سایت ، کاملا روشن باشد. بطور مثال شما قصد انتشار مطلبی را دارید ؛ در ابتدا موضوع اصلی مقاله را با استفاده از تگ h1 نمایش می دهید و سپس عنوان فصل مشروحه را با تگ h2 و در صورت چند بخشی بودن مطلب ، عنوان بخش یا زیرفصل را با تگ h3 منتشر می کنید. در واقع شما مطلب خود را از نظر اهمیت ، درجه بندی نموده اید. انکرتکست ها در واقع بخشی از یک متن هستند به خاطر اهمیت آن ، نیاز به توضیحات مبسوط تر در صفحه ای مجزا دارند و کلیک پذیر میباشند یعنی با قرار گرفتن روی آن کلمه از متن و کلیک بر روی آن ، مخاطب به صفحه دیگر هدایت می شود تا توضیحات تکمیلی در باره آن کلمه را مشاهده نماید. انتخاب عنوان انکرتکست یا همان کلمه کلیک پذیر ، دارای اهمیت میباشد. استفاده از کلمات کلیدی در این عناوین ، توصیه گردیده است.

icon

بهینه سازی توضیحات متا و چگالی کلمات کلیدی

متا تگها از عوامل موثر در سئو وب سایت ها می باشد. یکی از این متا تگ ها ، متا تگ توضیحات در وب سایت می باشد. توضیحات متا یا متا دیسکریپشن متنی است که برای نمایش داده شدن در قسمت توضیحات گوگل نوشته می‌شود. توجه داشته باشید که تعداد کاراکترهای توضیحات متا به طور متوسط 255 کاراکتر میباشد ، اما اینکه گوگل چه تعداد از آن‌ها را نمایش دهد بستگی به محتوای صفحه و توضیحات نوشته شده در متا دیسکریپشن دارد. در توضیحات متا حتماً از کلمات کلیدی استفاده کنید، اما آن را بیش از حد با کلمات کلیدی پر نکنید. سعی کنید خیلی ساده و راحت، طوری که هم گوگل متوجه شود و هم کاربر مقصود و کلیات محتوای صفحه را بفهمد، توضیحات متا را بنویسید. رعایت کردن چگالی کلمات کلیدی از دیگر نکات مهم در امر سئو میباشد. در صد کلمۀ اول محتوایتان از کلمات کلیدی هدف استفاده کنید ولی در ادامه مطلبتان سعی کنید توزیع کلمات کلیدی شما یکنواخت باشد به طوریکه مفهوم و گرامر ؛ ادبیات متن ؛ مطلب شما دچار آشفتگی نشود. گوگل با الگورتیم های خاص خود ، سعی در بررسی مفهومی محتوای شما دارد. البته این بررسی به گمان من بیشتر در مطالب انتشار یافته به زبان انگلیسی یا چند زبان پر مخاطب دنیا نمود پیدا می کند.

icon

جذب بازدیدکنندگان

یکی از نکات مورد توجه گوگل در بررسی وب سایتها ، مدت زمانی است که بازدیدکنندگان در حال مشاهده صفحات وب سایت هستند. پس سعی کنید در مطالبی که منتشر می کنید لینکهایی را به مطالب دیگر وب سایت خود قرار دهید. لینکهایی که کنجکاوی مخاطبان را برانگیزد و به آن صفحات مراجعه نمایند. این امر باعث میشود بازدیدکنندگان زمان بیشتری را برای مشاهده مطالب وب سایت اختصاص بدهند و این امتیاز مثبتی برای وب سایت شما محسوب می شود. اگر میخواهید کسی را مورد قضاوت قرار دهید ، دوستان او را ارزیابی کنید. دوستان خوب ، همیشه شما را به دوستان خوب دیگر معرفی می کنند. پس اگر مطلب خوبی در یک سایت دیگر ؛ بخوبی خودتان ؛ سراغ دارید ، بازدیدکنندگان مطالبتان را به آنها ارجاع دهید.

icon

بارگذاری سریع وب سایت

یکی از پارامترهای موثر در سئو ، زمان بارگذاری وب سایت در بروزر مشتری می باشد. هر چقدر مدت زمان مورد نیاز برای بارگذاری وب سایت کمتر باشد ، یک امتیاز مثبت برای وب سایت شما تلقی می گردد. عوامل مختلفی بر سرعت بارگذاری وب سایت تاثیرگذار میباشند. مشخصات سرور هاست ، پهنایی باند اختصاص یافته و سایر عوامل در سرعت بارگذاری موثر هستند. اما در صفحات وب سایت ، با بهینه کردن حجم عکس‌ها می‌توانیم به بهبود سرعت بارگذاری صفحات سایت کمک می‌کنیم. نکتۀ دیگری که در خصوص بهینه سازی تصاویر سایت وجود دارد، انتخاب نام مناسب برای آن‌ها و استفاده از خصیصه Alt است. خصیصه Alt به موتورهای جستجو کمک می‌کند متوجه موضوع عکس و ارتباط آن با متن شوند. مطالبی که حداقل یک عکس در آن‌ها به‌کار رفته نسبت به مطالبی که بدون عکس هستند جایگاه خیلی بالاتری دارند.

icon

هماهنگی با گوشی‌های موبایل

قابلیت واکنش گرایی یا ریسپانسیو بودن ، این امکان را فراهم مینماید که وب سایت در تمام سایزهای صفحات نمایش ، بدون بهم ریختگی قابل مشاهده باشد. یا بعبارتی ساختار صفحات وب حفظ گردد. در سال 2015 گوگل رسماً اعلام کرد، سایت‌هایی که ریسپانسیو یا همان واکنش‌گرا نباشند به جایگاه‌های پایین‌تر نتایج گوگل نزول خواهند کرد.

icon

SSL و TSL

1- محافظت از اطلاعات : SSL مخفف Secure Socket Layer به معني «لايه اتصال امن» و پروتکلي جهت برقراري ارتباطات ايمن ميان سرويس دهنده و سرويس گيرنده در اينترنت است. در واقع اطلاعات با استفاده از این تکنولوژی رمز نگاری شده و سپس ارسال و دریافت میگردد و امنیت اطلاعات در طول مسیر تضمین میگردد. 2- احراز هویت : هنگام اخذ گواهینامه SSL یک فرآیند اعتبارسنجی صورت می گیرد که طی آن، بسته به نوع گواهینامه، هویت شما و سازمان متبوع سنجیده می‌شود. به بیانی دیگر اصالت وب سایت تایید میگردد. در سالهای ابتدایی استفاده از این تکنولوژی در بستر http کاهش سرعت بارگذاری اجتناب ناپذیر بود ولی با ارتقای این بستر به http/2 این مشکل مرتفع گردید. این پروتکل از طریق فشرده سازی اطلاعات و کاهش فرآیندهای مورد استفاده ، ۵۰ درصد زمان بارگذاری صفحات را کاهش داد.استفاده از https در ابتدای آدرس یک وب سایت نشان دهنده اخذ گواهینامه SSL توسط صاحب امتیازان آن وب سایت می باشد. نگارش جدید از تکنولوژی SSL که امروزه مورد استفاده قرار می گیرد TSL می باشد که برخی از نقاط ضعف SSL در آن بهبود پیدا کرده است که صحبت در مورد آن از حوصله بحث ما خارج می باشد.

icon

بهینه سازی وب سایت برای ربات گوگل

گوگل با استفاده از رباتهای خود وارد وب سایت ها شده و اطلاعات آن را به سرورهای گوگل منتقل می کنند. به این فرآیند اصطلاحا کراول کردن (Crawling) می گویند. به بیانی دیگر این رباتها در اینترنت می خزند و اطلاعات را جمع آوری و به سرورهای گوگل ارسال می کنند. انواع رباتهای گوگل : Googlebot desktop: این ربات به بررسی و ایندکس نسخه دسکتاپی وب سایت ها می ردازد. Googlebot mobile: این ربات به بررسی و ایندکس نسخه مویابلی سایت ها می پردازد. Googlebot Video: این ربات به بررسی ویدئوهای موجود در وب می پردازد. Googlebot Images: این ربات به پایش تصاویر موجود در وب می پردازد. Googlebot News: این ربات مختص سایت های خبری است. رباتهای دیگری هم هستند که هر کدام وظیفه های مختص خود را برای گوگل انجام میدهند بطور مثال ربات AdsBot کیفیت تبلیغ ها را چک می کند. همینطور ربات اپلیکشن اندروید گوگل به بررسی اپ های اندرویدی می پردازد. اما چگونه می توانیم بر عملکرد تمام رباتهای فعال در اینترنت ؛ بدون توجه به کمپانی های سازنده ؛ در خصوص وب سایتمان مدیریت نماییم. برای مدیریت دسترسی رباتها کافیست فایلی تحت عنوان robots.txt در دایرکتوری public_html ایجاد می نماییم و در آن مجوزهای دسترسی رباتها را به اطلاعات وب سایت را مشخص می نماییم.
user-agent: bing-bot disallow: /images user-agent: * allow: /gallery

icon

چگونه یک نرم افزار توسعه می یابد؟

روشهای برنامه نویسی که تاکنون مورد استفاده قرار گرفته اند عمدتا تحت عناوین فرآیند محور ، شی محور و تابع محور گروه بندی میگردند. هر یک از روشهای برنامه نویسی ذکر شده ، بنوبه خود دارای سیکل حیات مشخص خود میباشند. با توجه به سیکل حیات نرم افزار ،متدولوژی های گوناگون تولید وجود دارد که این متدها فازهای مختص خود را جهت تولید و توسعه نرم افزار ، دارند. در روش قدیمی برنامه نویسی فرآیند محور، دوره حیات نرم افزار TLC نامیده میشود. تی ال سی دارای متدولوژی های مختلف تولید میباشد که پرکاربردترین متدولوژی آن ، مدل آبشاری میباشد. مدل آبشاری دارای 7 فاز در توسعه نرم افزار میباشد که شامل فازهای زیر میباشد: 1- مهندسی سیستم ، 2- آنالیز نیازمندیها ، 3- طراحی ، 4- ساخت ، 5- آزمایش ، 6- نصب ، 7- نگهداری یکی دیگر از روشهای برنامه نویسی که دارای محبوبیت زیادی در بین توسعه دهنگان نرم افزار میباشد روش شی محور یا همان شی گرا میباشد. چرخه حیات سیستم در این روش از برنامه نویسی را OODLC می نامند. از مزایای برنامه نویسی شی گرا میتوان به استقلال هویتی اجزا ، پایداری سیستم ، قابلیت نگهداری ، قابلیت استفاده مجدد اجزا و داشتن دید واقعی به دنیای اطراف ، اشاره نمود. متد یکپارچه رشنال یا RUP متدی مبتنی بر توسعه شی گرا میباشد که قابلیت تکرار در مراحل تولید و توسعه نرم افزار در این متد لحاظ گردیده است. این متدولوژی مشمول بر 4 فاز و 5 روال در هر فاز میباشد. فازها عبارتند از : 1- برآورد ، 2- بسط ، 3- ساخت ، 4- انتقال و روال هایی که در هر فاز انجام میگردد عبارتند از : 1- نیازمندی ، 2- آنالیز ، 3- طراحی ، 4- جهت گیری ، 5- آزمایش

icon

زبان مدل سازی یکپارچه

زبان مدل سازی یکپارچه Unified Modeling Language یا به اختصار UML زبانی است عامه فهم، توسعه پذیر و مدلساز که در زمینه مهندسی نرم افزار با هدف ارایه روشی استاندارد برای توصیف و تجسم طراحی یک سیستم بکاربرده می شود. UML روشی برای توسعه نرم افزار نمی باشد ولی به گونه ای طراحی شده است که با روشهای مختلف تولید و توسعه نرم افزار سازگار میباشد. از جمله روشهای پیشرویی که در این زبان لحاظ گردیده روش توسعه شی گرا میباشد. در متد RUP تاکید خاصی بر UML در مدلسازی توسعه نرم افزار دارد. مراحل طراحی و تحلیل نرم افزار بطور کلی مطابق دستورالعمل زیر می باشد: 1- تهیه سند حوزه و میدان عملکرد پروژه 2- مطالعات امکان سنجی 3- ترسیم Context Diagram 4- تعیین موجودیتهای خارجی 5- مدل سازی Use Case ها 6- تهیه سناریو برای Use Case ها 7- تشخیص Actor ها و روابط بین آنها 8- ترسیم نمودارهای Sequence و Collaboration برای Use case ها 9- ترسیم نمودارهای State و Activity در صورت لزوم 10- استخراج فهرست کلاسهای کاندید 11- استخراج فهرست کلاسهای واقعی 12- تعیین Attribute ها و Operation ها در هر کلاس 13- تشخیص انواع لینکهای بین کلاس ها 14- ایجاد انواع جداول و بهینه سازی آنها
team work