درود بر شما
ضمن عرض خیرمقدم ، از اینکه این وب سایت را مورد بازدید قرار می دهید ، سپاسگزارم.
در دنیای مدرن امروزی که هر روز شاهد ظهور فناوری های نو در عرصه های مختلف علوم مهندسی هستیم
بی شک فناوری اطلاعات دارای اهمیت ویژه ای میباشد و پیشرفت های علوم دیگر به نحوی وابسته به این فن آوری میباشد.
از این رو گسترش و پیشرفت این فناوری بسیار چشمگیر و دارای شاخه ها و زیرشاخه های متعددی میباشد .
در این میان علوم مهندسی به ویژه در امور طراحی و محاسبات پیچیده عددی و همچنین در بخش اقتصاد ،
حسابداری و فروش و بازاریابی سهم عمده ای در بهره برداری از مزایای این فناوری را به خود اختصاص داده اند .
ولی در سالهای اخیر این فناوری پا به عرصه روابط اجتماعی و علوم انسانی نهاده است
و بستری مناسب برای معرفی و ارایه عقاید و تفکرات تک تک افراد جامعه جهانی ایجاد نموده است .
فعالیت ها :
نقد و بررسی
شبکه اینترنت ملی ، یک گام به جلو یا عقب
1399/8/29
این روزها هر از گاهی صحبت از اینترنت ملی به میان می آید که اظهارنظر برخی از مسئولان جای تامل و مو شکافی دارد. اجازه بدید قبل از ورود به این بحث ، اشاره ای به راهکارهای یکی از کشورهای پیش رو و موفق در ایجاد و راه اندازی اینترنت ملی داشته باشم.
کره شمالی کشوری است که در آن دسترسی به اینترنت برای همگان ممنوع میباشد. بجز تعداد محدودی از مقامات بلندپایه کشوری ، آنهم بشکل محدود میتوانند از اینترنت استفاده کنند. البته گفته میشود که تعداد کمی از کامپیوترهای موجود در دانشگاه ها هم با نظارت بسیار دقیق می توانند به برخی از محتواهای سایتهای اینترنتی دسترسی داشته باشند. البته همین دسترسی ها هم در راستای تامین منافع دولت صورت می گیرد . سایر شهروندان نیز می توانند فقط به شبکه اینترنت ملی که به آن کوانگ میونگ گفته میشود ؛ تحت شرایط امنیتی خاص خود ؛ دسترسی داشته باشند.
این شبکه ملی اطلاعات و محتوای خود را از مرکز کامپیوتر کره ( KCC ) تامین میکند.
کمپانی انفورماتیک پیونگ یانگ نوعی تبلت با سیستم عامل اندروید با نام
Ullim در سال 2014 تولید نموده که دارای بالاترین سطح نظارتی و کنترلی میباشد و همگان موظف به استفاده از آن میباشند. از امکانات این تبلت تهیه اسکرین شات از آپهای مورد استفاده و ثبت تاریخچه مرورگر و ارسال آن به یک مرکز امنیتی میباشد.
آقای جولین پین از گزارشگران بدون مرز ، کره شمالی را بدترین سیاهچاله اینترنت جهان توصیف کرده است. به گزارش این نهاد بین المللی در بین 13 کشور ثبت شده در فهرست سیاه این نهاد ، کره شمالی رتبه اول در محدود کردن دسترسی به اینترنت را به خود اختصاص داده است.
و اما در کشور ما ایران ، زمزمه هایی از مسئولان بگوش میرسد که نشان از وجود عزم جدی برای اعمال محدودیت و شاید هم قطع ارتباط با شبکه جهانی اینترنت دارد. بعد از حوادث آبان ماه 98 ، رویکرد مسئولات مهر تاییدی بر این موضوع میباشد. تصویب قوانین سخت گیرانه برای فروشندگان وی پی ان و پروکسی و حتی خریداران این خدمات ؛ صدور احکام 6 ماه تا دو سال زندان ؛ انتقال ارتباطات بانکی به زیرساخت های شبکه ملی و قطع نیاز به بستر شبکه جهانی اینترنت همگی گواه بر این موضوع دارد که پروژه قطع ارتباط با دنیا و اعمال نظارتهای بی حد و حصر بر ارتباطات مردم ، کلید خورده است. ارایه لایحه جهت واگذاری گذرگاه اینترنت به نیروهای مسلح و ممنوعیت فعالیت شرکتهای خارجی فعال در زمینه شبکه های اجتماعی در ایران ، توسط نمایندگان مجلس ، همگی نشان از امنیتی کردن فضای شبکه های اجتماعی و اینترنت دارد.
حال اگر در باره ایجاد محدودیت در روند جریان اطلاعات در جامعه مسئولان را مورد سوال قرار دهید ، وجود انحرافهای اخلاقی و اجتماعی و وقوع جرم در فضای مجازی و ... بهانه قرار می دهند و این در حالیست صاحبان تمام سایتهای قمار و شرط بندی یا فرزندان همین مسئولان و یا توصیه شده از طرف همین مسئولان میباشند.
از طرفی برخی از مسئولان قوه قضایی صحبت از فیلتر کردن تمام شبکه های اجتماعی خارج از کشور می زنند و یا وزیر ارتباطات مجوز فعالیت این شبکه های اجتماعی را منوط به انتقال سرورهای شرکتهای ارایه دهنده این خدمات ، به داخل کشور اعلام میکند تا ارگانهای امنیتی و اطلاعاتی بتوانند به اطلاعات خصوصی مخاطبان این شبکه ها ، دسترسی داشته باشند ، که قطعا این شرکتها حاضر به نقض حریم خصوصی کاربران خود نیستند.
و یا برخی از نمایندگان مجلس داد سخن از ایجاد شبکه های اجتماعی توسط شرکتهای داخل کشور بر میاورند و صحبت از امکان پذیر بودن عضویت کاربران در این شبکه های اجتماعی وطنی فقط با ارایه کد ملی افراد ، می زنند.
حال باید نشست و دید آیا پیاده سازی الگوی کشور کره شمالی در کشور ما هم با توجه به بافت فرهنگی و اجتماعی و اقتصادی کاملا متفاوت با کره شمالی ، امکان پذیر خواهد بود و یا نیاز به تغییر دیدگاه دارد.
شبکه های اجتماعی ، چهارچوبی امن یا پر مخاطره
1395/11/28
شبکه های اجتماعی به مجموعه ای از گرافهایی گفته می شود که هر نود آن متشکل از یک فرد یا سازمان میباشد و یالهای آن ارتباط و تعامل بین این افراد یا سازمانها را مشخص می نماید. از طرفی هر فضایی که عامل تسریع در ایجاد و شکل گیری شبکه های اجتماعی می شوند را یک سرویس شبکه اجتماعی نامگذاری نموده اند. حال اگر بستر ارتباطی این سرویس ها ،اینترنت باشد مفهوم شبکه های اجتماعی در فضای مجازی شکل می گیرد. این نوع از شبکه های اجتماعی در سالهای اخیر به سرعت گسترش یافته و بین احاد جامعه بخصوص جوانان از محبوبیت زیادی برخوردار شده است. برای برخی نیز امکان ایجاد کسب و کار و حصول درآمد را فراهم نموده است. تشکیل گروه های مختلف خبری ، علمی و حتی عقیدتی ، جذابیت ویژه برای مخاطبان در پی داشته و این امر موجب پدید آمدن سوپرگروه هایی با تعداد کثیری از اعضا شده است. همانطور که در ابتدای مطلب گفته شد بستر ارتباطی در شبکه های اجتماعی مجازی ، اینترنت میباشد. ولی جهت دسترسی به اعضا و ارسال و دریافت پیامها نیاز به نرم افزارها و سرویس دهنده های این خدمات میباشد. در همین راستا شرکتهای بزرگی شروع به سرمایه گذاری و فعالیت در این زمینه نموده اند. کاربران این سرویسها هم با توجه به امکاناتی که این شرکتها در اختیار آنها قرار می دهند مناسب ترین نرم افزار را انتخاب نموده و با ایجاد گروه های مختلف شروع به فعالیت می نمایند. نکته بسیار حایز اهمیت ذیل مفاهیم گفته شده در این است که نظارت بر محتوای این نوع از شبکه های اجتماعی عملا از دست دولتها و دستگاه های حاکم خارج گشته و فقط قوانین شرکت فراهم کننده سرویس بر این شبکه ها حاکم میباشد. همین عامل سبب نگرانی دولتمردان حکومتهای غیر دمکراتیک و تمامیت خواه و اغلب ایدوئولوک گردیده و اغلب مانع فعالیت های این شرکتها در کشورهای مطبوع خود می گردند. متاسفانه کشور ما هم از این قاعده مستثنی نیست و شگفتا علما دینی نیز بشدت مخالف گسترش فعالیتهای این شبکه ها میباشند که خود جای تامل و موشکافی میباشد.
اینترنت و نقش آن در توسعه اقتصاد کشور
1391/6/31
بیش از دو دهه از حضور شبکه جهانی اینترنت در ایران میگذرد و در این مدت همواره از سیاست گرفته تا اقتصاد و فرهنگ و روابط اجتماعی و غیره را مورد چالش قرارداده است. از بسترهای سخت افزاری مورد نیاز گرفته تا ارایه خدمات توسط سازمان صدا و سیما یا وزارت ارتباطات ، اعمال فیلترینگ و نبود قوانین قضایی برای برخورد با مجرمین سایبری و بحث حفظ حریم خصوصی افراد جامعه و بسیار موارد دیگر ، با مشکلات و کاستی های قابل توجهی دست به گریبان بوده است. صحبت در مورد اینترنت و موضوعات مرتبط با آن بسیار است که مستلزم زمان و نظرات کارشناسان حوزه های گوناگون میباشد که خارج از این مجال میباشد. لذا به کوتاه نطری به نقش اینترنت در توسعه اقتصاد کشور می اندازیم. اگر به روند رشد تجارت الکترونیک در سال های اخیر نگاهی بیاندازیم شاهد جهشی بزرگ در این عرصه میباشیم. گسترش دسترسی به اینترنت در کل کشور و همچنین ورود گوشی های هوشمند به بازار ایران ، زمینه مناسبی را جهت رشد و شکوفایی تجارت الکترونیکی ایجاد نمود و همین امر باعث بر پایی وب سایتهای فروشگاهی و خدماتی و پایانه های بانکی بی شماری در فضا مجازی گردید. حال سئوال این است آیا این گسترش با رشد اقتصادی کشور همگون و متناسب میباشد؟ آیا این گسترش با تولید ناخالص ملی متناسب است؟ اینها سوالاتی است که بزرگان اقتصاد باید پاسخی مناسب برای آنها داشته باشند. ین موضوع قابل تامل است که چند درصد از تولیدکننده های داخلی توانسته اند به سطحی از شکوفایی برسند که بخواهند محصولات خود را از طریق فضای مجازی معرفی کرده و یا بفروش برسانند. فضای مجازی با این پتانسیل چقدر موفق به جذب مخاطبان جدید از هر دو گروه خریدار و فروشنده شده است. با راه اندازی هر فروشگاه اینترنتی به مشتریان خرید از فضای مجازی افزوده نمی شود بلکه فروشگاه های جدید با مشتریان فروشگاه های قبلا راه اندازی شده ، سهیم میشوند. فعالیتهای تجاری در فضای مجازی ، چه میزان از نرخ بیکاری در جامعه را کاهش داده است. اگر در اینترنت گشتی بزنید با کسب و کارهای کاذب و بعضا عجیبی برخورد میکنید که در حال تبادلات مالی هستند ولی نمی توان نام کسب و کار بر آنها نهاد. بنظر میرسد تا رسیدن به یک فضای مجازی تجاری مناسب که مانند یک کسب و کار در عالم واقعیت ، شفاف و متعهدانه باشد راه زیادی پیشرو میباشد و اگر مشکلات اقتصادی در عالم واقع حل نگردد ، نباید انتظار تجارت الکترونیکی سالم و پر رونق را داشت.
بازار تولید نرم افزار و چالش های پیش رو
1390/1/25
پر واضح است که نرم افزار ، از الزامات پایه ای صنعت انفورماتیک میباشد که تا دهه های هفتاد تحرکی در شکوفایی این صنعت پایه ای در کشور دیده نمیشد و اندک فعالیت انجام شده مصروف فارسی سازی نرم افزارها ؛ بطور ویژه کلمه پردازها ؛ میشد . در اواسط دهه هفتاد و با گسترش استفاده از رایانه های شخصی در بنگاه های بزرگ اقتصادی و از همه مهمتر دوایر دولتی و بانکی ،ناگهان خلاء بزرگی در عرصه تولید نرم افزارهای ایرانی بوجود آورده و فارغ التحصیلان دانشگاهی علوم کامپیوتر ،نا آشنا با سیستم های مالی ، اداری ، حسابداری صنعتی و ... و ناآشنا با فعالیت های گروهی بر مشکلات این صنعت نوظهور دامن میزد. ولی پس از اندک زمانی برنامه نویسی ؛ به ویژه در حوزه های مالی ؛ رشد قابل توجهی یافت بطوریکه تیم های حرفه ای از برنامه نویسان پا به عرصه تولید نرم افزار نهادند که اغلب تحصیلات و یا فعالیتی غیر مرتبط باامور کامپیوتر داشته اند که این نقطه عطفی در این صنعت بشمار میرود. سوالی که مطرح میشود چرا نقطه عطف ؟ شاید یکی از دلایل آن ، رفع و رجوع نیازهای خود افراد با استفاده از کامپیوتر در حوزه فعالیت خود بوده است و این امر باعث گسترش سریع این فناوری در جامعه ایران گردید.از سویی ورود این فناوری به عرصه های مختلف مشاغل و علوم و فنون ،باعث ایجاد زمینه ای بسیار وسیع از کاربردهای این تکنولوژی گردید و حرفه برنامه نویسی را با تعدد تخصص مواجه گردانید و همین امر باعث سردرگمی برنامه نویسان در انتخاب حوزه های تخصصی فعالیتشان گردیده است. آیا باید به این علم به عنوان حرفه توجه نمود یا نه ، صرفا یک مهارت محسوب میگردد ؟ بگذریم از این موضوع که در جامعه دانشگاهی ابتدا به عنوان علوم پذیرفته شد ، بعد به مهندسی تغییر ماهیت داد و هر از گاهی زمزمه هایی از قرار گرفتن در گروه علوم پایه نیز به گوش میرسد. بقول یکی اساتید برنامه نویسان جزو معدود افراد جامعه هستند که دایرالمعارف مشاغل هستند. از طرفی در این آشفته بازار برنامه نویسی ، موضوعی که مشهود است گسترش تولید نرم افزارهایی است که صنعت مرتیط با آن در کشور رو به رشد میباشد. شما تصور کنید چه تعداد صنعت و تجارت در کشورمان وجود دارد که در حال پیشرفت میباشد. اما اکنون بعد از گذشت سه دهه از ظهور این فناوری در عرصه صنایع کشور ، حرکت به سمت و سوی استانداردهای جهانی در زمینه های تولید ، ارایه ، پشتیبانی و ... کاملا مشهود میباشد. با این حال پیشرفت این صنعت در کشورمان ، در قیاس با کشورهایی مانند هند و چین بسیار ناچیز میباشد که این موضوع ارتباط مستقیم با سیاست های خارجی دولت و جذب سرمایه گذاران خارجی دارد. از اینرو ما شاهد اشباع شدن تولیدات در حوزه های مالی و از طرفی خلاء تولید نرم افزار در سایر حوزه ها میباشیم.
یاداشتها
const element = <div><h1>Hello world</h1></div> ; ReactDOM.render( element, document.getElementById('root') );
npx create-react-app my-app cd my-app npm start
ادامه دارد...
php artisan make:provider MyServiceProvider ----------------------------------------------------------------------------------------- namespace App\Providers; use App\Services\MyService\Connection; use Illuminate\Support\ServiceProvider; class MyServiceProvider extends ServiceProvider { /** * Register any application services. * * @return void */ public function register() { $this->app->singleton(Connection::class, function ($app) { return new Connection(config('myService')); }); } } ----------------------------------------------------------------------------------------- namespace App\Providers; use Illuminate\Support\Facades\View; use Illuminate\Support\ServiceProvider; class ComposerServiceProvider extends ServiceProvider { /** * Bootstrap any application services. * * @return void */ public function boot() { View::composer('view', function () { // }); } } ----------------------------------------------------------------------------------------- use Illuminate\Contracts\Routing\ResponseFactory; /** * Bootstrap any application services. * * @param \Illuminate\Contracts\Routing\ResponseFactory * @return void */ public function boot(ResponseFactory $response) { $response->macro('serialized', function ($value) { // }); }
Simple Bindings , Binding A Singleton , Binding Instances , Binding Interfaces To Implementations , Contextual Binding , Binding Primitives , Binding Typed Variadics , Extending Bindings
که در یاداشتهای بعدی تک تک این موارد را بررسی می کنیم.Schema::create('sessions', function ($table) { $table->string('id')->unique(); $table->foreignId('user_id')->nullable(); $table->string('ip_address', 45)->nullable(); $table->text('user_agent')->nullable(); $table->text('payload'); $table->integer('last_activity'); }); php artisan session:table php artisan migrate $value = $request->session()->get('key'); $value = session('key'); session(['key' => 'value']);
<?php namespace App\Http\Controllers; use App\Http\Controllers\Controller; use App\Models\User; class UserController extends Controller { public function show($id) { return view('user.profile', ['user' => User::findOrFail($id)]); } } use App\Http\Controllers\UserController; Route::get('user/{id}', [UserController::class, 'show']); php artisan make:controller ShowProfile php artisan make:controller PhotoController --resource
Route::get('foo', function () { return 'Hello World'; }); Route::get($uri, $callback); Route::post($uri, $callback); Route::put($uri, $callback); Route::patch($uri, $callback); Route::delete($uri, $callback); Route::options($uri, $callback); Route::match(['get', 'post'], '/', function () { // }); Route::any('/', function () { // }); Route::redirect('/here', '/there'); Route::view('/welcome', 'welcome');
<!----- masterPage.blade.php -----!> <!DOCTYPE html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="shortcut icon" href="/images/favicon.ico"> <link rel="stylesheet" type="text/css" href="/css/style.css" /> <script src="/js/jquery.min.js"></script> <title>@yield('title')</title> </head> <body> <div> @yield('content') </div> </body> </html> <!----- home.blade.php -----!> @extends('masterPage') @section('title','My website home page') @section('content') <div> <p> hello world. </p> </div> @endsection
composer global require laravel/installer laravel new myproject php artisan serve
ادامه دارد...
user-agent: bing-bot disallow: /images user-agent: * allow: /gallery
<html> <head> <title>Website Title</title> </head> <body> </body> </html>
<?php class DB { /** * Our single database client instance. * * @var Database */ private static $instance; /** * Disable instantiation. */ private function __construct { // Private to disabled instantiation. } /** * Create or retrieve the instance of our database client. * * @return Database */ public static function getInstance() { if (is_null(static::$instance)) { static::$instance = new Database; static::$instance->setHost('127.0.0.1'); static::$instance->setPort(3306); static::$instance->setUsername('root'); static::$instance->setPassword('password'); } return static::$instance; } /** * Disable the cloning of this class. * * @return void */ final public function __clone() { throw new Exception('Feature disabled.'); } /** * Disable the wakeup of this class. * * @return void */ final public function __wakeup() { throw new Exception('Feature disabled.'); } }
ادامه دارد...
Major.Minor.Build.Revision
// Class class Fruit { // Properties public $name; public $color; // Methods function set_name($name) { $this->name = $name; } function get_name() { return $this->name; } } ------------------------------------------------------------------------------------------------------- // Constructor and Destructor class Fruit { public $name; public $color; function __construct($name) { $this->name = $name; } function __destruct() { echo "The fruit is {$this->name}."; } function get_name() { return $this->name; } } $apple = new Fruit("Apple"); echo $apple->get_name(); ------------------------------------------------------------------------------------------------------- // Access Modifiers class Fruit { public $name; protected $color; private $weight; } $mango = new Fruit(); $mango->name = 'Mango'; // OK $mango->color = 'Yellow'; // ERROR $mango->weight = '300'; // ERROR ------------------------------------------------------------------------------------------------------- // Inheritance class Fruit { public $name; public $color; public function __construct($name, $color) { $this->name = $name; $this->color = $color; } public function intro() { echo "The fruit is {$this->name} and the color is {$this->color}."; } } // Strawberry is inherited from Fruit class Strawberry extends Fruit { public function message() { echo "Am I a fruit or a berry? "; } } $strawberry = new Strawberry("Strawberry", "red"); $strawberry->message(); $strawberry->intro(); ------------------------------------------------------------------------------------------------------- // Abstract Classes // Parent class abstract class Car { public $name; public function __construct($name) { $this->name = $name; } abstract public function intro() : string; } // Child classes class Audi extends Car { public function intro() : string { return "Choose German quality! I'm an $this->name!"; } } class Volvo extends Car { public function intro() : string { return "Proud to be Swedish! I'm a $this->name!"; } } class Citroen extends Car { public function intro() : string { return "French extravagance! I'm a $this->name!"; } } // Create objects from the child classes $audi = new audi("Audi"); echo $audi->intro(); echo "<br>"; $volvo = new volvo("Volvo"); echo $volvo->intro(); echo "<br>"; $citroen = new citroen("Citroen"); echo $citroen->intro(); ------------------------------------------------------------------------------------------------------- // Interfaces // Interface definition interface Animal { public function makeSound(); } // Class definitions class Cat implements Animal { public function makeSound() { echo " Meow "; } } class Dog implements Animal { public function makeSound() { echo " Bark "; } } class Mouse implements Animal { public function makeSound() { echo " Squeak "; } } // Create a list of animals $cat = new Cat(); $dog = new Dog(); $mouse = new Mouse(); $animals = array($cat, $dog, $mouse); // Tell the animals to make a sound foreach($animals as $animal) { $animal->makeSound(); } ------------------------------------------------------------------------------------------------------- // Traits trait message1 { public function msg1() { echo "OOP is fun! "; } } trait message2 { public function msg2() { echo "OOP reduces code duplication!"; } } class Welcome { use message1; } class Welcome2 { use message1, message2; } $obj = new Welcome(); $obj->msg1(); echo "<br>"; $obj2 = new Welcome2(); $obj2->msg1(); $obj2->msg2();