YOUtH TechnologyNight Vol.3 で発表. Blazor製ToDoリストアプリ -> https://todomanager-7196c.web.app/ Wyam製Atriaのポートフォリオ -> https://atria64.github.io/portfolio/ --- - 自己紹介とかいろいろ - プログラミング言語とは - C#とは - C#でできること - C#の可能性
プログラミング言語C#で世界を創るC#のスゴイところ、お魅せします。Speaker:@AtriaSoft2020/5/26(火)YOUtH TechnologyNight Vol3.
View Slide
スライドの撮影SNSへの投稿OKSpeaker : @AtriaSoft
自己紹介とかいろいろSpeaker : @AtriaSoft
Atria(あとりあ)です。@AtriaSofthttp://atriasoft.work/Atria64• 畑 大地(a.k.a. Atria)• 公立はこだて未来大学B2– 北海道にある情報系大学!• 趣味がいっぱい– プログラミング– アウトドア– ゲーム自己紹介とかいろいろSpeaker : @AtriaSoft
熟練度別この発表を聞く心構えSpeaker : @AtriaSoft自己紹介とかいろいろ
スライドの配置Speaker : @AtriaSoft自己紹介とかいろいろここに現在のトピックここにぼくのTwitterIdここにスライドの内容
プログラミング何もわからん方Speaker : @AtriaSoft• 6割かんたんな内容で構成してるので大丈夫!(なはず)• 出てくるコードは読まなくていいです!雰囲気感じる感じで楽しんでください。プログラミングチョットデキル方• 4割コアな内容を入れています。コアな内容は緑。• 内容が間違っているなどの指摘をいただけると幸いです。(その時はやんわりとお伝え下さい)自己紹介とかいろいろ
プログラミング何もわからん方Speaker : @AtriaSoft• 6割かんたんな内容で構成してるので大丈夫!(なはず)• 出てくるコードは読まなくていいです!雰囲気感じる感じで楽しんでください。プログラミングチョットデキル方“チョットデキル”完全理解者を指す界隈用語。• 4割コアな内容を入れています。コアな内容は緑。• 内容が間違っているなどの指摘をいただけると幸いです。(その時はやんわりとお伝え下さい)自己紹介とかいろいろ
プログラミング何もわからん方Speaker : @AtriaSoft• 6割かんたんな内容で構成してるので大丈夫!(なはず)• 出てくるコードは読まなくていいです!雰囲気感じる感じで楽しんでください。プログラミングチョットデキル方“チョットデキル”完全理解者を指す界隈用語。• 4割コアな内容を入れています。コアな内容は緑。• 内容が間違っているなどの指摘をいただけると幸いです。(その時はやんわりとお伝え下さい)オレンジの吹き出しは初学者向け情報!自己紹介とかいろいろ
プログラミング何もわからん方Speaker : @AtriaSoft• 6割かんたんな内容で構成してるので大丈夫!(なはず)• 出てくるコードは読まなくていいです!雰囲気感じる感じで楽しんでください。プログラミングチョットデキル方緑の内容は聞き流しOK.• 4割コアな内容を入れています。コアな内容は緑。• 内容が間違っているなどの指摘をいただけると幸いです。(その時はやんわりとお伝え下さい)自己紹介とかいろいろ
本日のおしながき• 自己紹介とかいろいろ• プログラミング言語とは– 基礎の基礎から解説します• C#とは• C#でできること– なんでもできます• C#の可能性Speaker : @AtriaSoft自己紹介とかいろいろ
プログラミング言語とはSpeaker : @AtriaSoft
Speaker : @AtriaSoft“方言”のようなものであるプログラミング言語とは
コンピュータに命令するしくみSpeaker : @AtriaSoftプログラミング言語とは
コンピュータに命令するしくみ• コンピューターくんは0と1しかわからない– かわいいね!• なので我々プログラマーは、0と1でプログラムを書くSpeaker : @AtriaSoftプログラミング言語とは
コンピュータに命令するしくみ• コンピューターくんは0と1しかわからない– かわいいね!• なので我々プログラマーは、0と1でプログラムを書くSpeaker : @AtriaSoft“プログラム”コンピュータへの命令をまとめたものプログラミング言語とは
プログラミング言語とはコンピュータに命令するしくみ• コンピューターくんは0と1しかわからない– かわいいね!• なので我々プログラマーは、Speaker : @AtriaSoftいや、無理やろ。
わかった!コンピュータに命令するしくみ(2)• 人間が理解できて、コンピュータにも分かる言葉(厳密には翻訳できる言葉)ができた。– これがプログラミング言語!Speaker : @AtriaSoftプログラミング言語0010111011000110111101010011111100010101110000111101010101110101010100...バイナリプログラミング言語とは
わかった!コンピュータに命令するしくみ(2)• 人間が理解できて、コンピュータにも分かる言葉(厳密には翻訳できる言葉)ができた。– これがプログラミング言語!Speaker : @AtriaSoftプログラミング言語0010111011000110111101010011111100010101110000111101010101110101010100...バイナリ“バイナリ”2進数で表現されるデータ。基本人間は読めない。プログラミング言語とは
言語には種類と特徴がある• C++(しーぷらぷら)– 計算速度が早い。難しい。• Python(ぱいそん)– AI作る時に使われる。読みやすい。• C#(しーしゃーぷ)– ぼくの推し、今回のメイン– 他の言語と比べてできることが多いプログラミング言語とはSpeaker : @AtriaSoft
言語には種類と特徴がある(2)言語ごとに文法が違う→方言みたいでしょ?プログラミング言語とは各言語の”こんにちは”C++(しーぷらぷら)std::cout << “こんにちは”<< std::endl;Python(ぱいそん)print(‘こんにちは’)C#(しーしゃーぷ)Console.WriteLine(“こんにちは”);Speaker : @AtriaSoft
まとめSpeaker : @AtriaSoft
プログラミング言語とは“方言”のようなものであるSpeaker : @AtriaSoft
今回のメインC#とはSpeaker : @AtriaSoft
プログラミング言語C#とは• 2000年生まれ,2001年リリース• Microsoftが作ったオープンな言語• 初心者に優しいとされている– 読みやすくって、環境を作りやすい– 使うのは無料!• 強力で、変態的、なんでもできる• 強い静的型付け• ラムダ式、LINQ、最高だよな。Speaker : @AtriaSoftC#とは
プログラミング言語C#とは• 2000年生まれ,2001年リリース• Microsoftが作ったオープンな言語• 初心者に優しいとされている– 読みやすくって、環境を作りやすい– 使うのは無料!• 強力で、変態的、なんでもできる• 強い静的型付け• ラムダ式、LINQ、最高だよな。Speaker : @AtriaSoft“環境づくり”プログラムを作るための準備のことC#とは
C#ができることSpeaker : @AtriaSoft
なんでもできますC#ができること画像出典:MS BuildSpeaker : @AtriaSoft
C#でできること一覧• Web開発– Blazor, ASP.NET, Wyam• ゲーム開発, xR– Unity, UnlialEngine(Usharp)• モバイル開発– XamarinForms, Xamarin.Android, Xamarin.IOS• ソフトウェア開発・IoT• 機械学習C#ができることSpeaker : @AtriaSoft
C#でできること一覧• Web開発– Blazor, ASP.NET, Wyam• ゲーム開発, xR– Unity, UnlialEngine(Usharp)• モバイル開発– XamarinForms, Xamarin.Android, Xamarin.IOS• ソフトウェア開発・IoT• 機械学習C#ができること“xR”VR,AR,MRの総称.Speaker : @AtriaSoft
Web開発C#ができることSpeaker : @AtriaSoft
実際に作ったものSpeaker : @AtriaSoftC#ができること | Web開発
円グラフで進捗状況を表示その他雑多な機能ふたつタスク管理アプリ(Blazor)C#ができること | Web開発
タスクの状況はこのように確認できるタスク管理アプリ(Blazor)C#ができること | Web開発
アプリについての説明ページも作成タスク管理アプリ(Blazor)C#ができること | Web開発
スマートフォンなど小さい画面にも対応アプリケーションのURLhttps://todomanager-7196c.web.app/PWA対応はできてません(頑張れば対応できます)タスク管理アプリ(Blazor)C#ができること | Web開発
ポートフォリオ(Wyam)https://atria64.github.io/portfolio/C#ができること | Web開発
すごいだろSpeaker : @AtriaSoftC#ができること | Web開発
Web開発(Blazor, ASP.NET, Wyam)• Web上で動くものを作ることができる。– たとえばTwitter、Instagramなど• みんなに使ってもらいやすい• ホームページを作れちゃう• ログインシステムも作れちゃう• サーバーサイドをC#で統一するとすべてC#で開発できるSpeaker : @AtriaSoftC#ができること | Web開発
エンジニアタイムC#でSPAが開発できるBlazorが今アツい!• Blazorを使うとフルスタック”C#”でSPA開発が可能• Razor構文でhtmlを記述できます• 豊富な.NETの資産を利用できます(NuGet)• 難しいことしなければC#の知識だけで組めるかも• Blazor WebAssembly 公式リリース!!(2020/05/20)• MobileBlazorBindings– Blazorでスマホネイティブが作れる野心的なプロジェクトSpeaker : @AtriaSoftC#ができること | Web開発
詳しくはWebで• タスク管理を行うSPAを"C#で"作ってみた / I made atask management…https://speakerdeck.com/atria/i-made-a-task-management-spa-in-c-number• 作ったWebアプリ(Blazor製)https://todomanager-7196c.web.app/Speaker : @AtriaSoftC#ができること | Web開発
ゲーム開発,xRC#ができることSpeaker : @AtriaSoft
プログラミング言語C#で世界を創るC#のスゴイところ、お魅せします。Speaker:@AtriaSoft2020/5/26(火)YOUtH TechnologyNight Vol3.C#ができること |ゲーム開発
C#のスゴイところ、お魅せします。Speaker:@AtriaSoft2020/5/26(火)YOUtH TechnologyNight Vol3.Unityでな!!!!!プログラミング言語C#で世界を創るC#ができること |ゲーム開発
世界つくります(ここでUnityのデモ)Speaker : @AtriaSoftC#ができること |ゲーム開発
すごいだろ(2)Speaker : @AtriaSoftC#ができること |ゲーム開発
これで怒られないはずタイトル詐欺だ!Speaker : @AtriaSoftC#ができること |ゲーム開発
ゲーム開発• Unityという有名ゲームエンジンが使える• ほとんどの個人開発者は無料でつかえる• ゲームも汎用アプリもARもVRも• アセットとかいうチート• C# 7.3を使える– Nullableなど対応のC#8が入ってほしい• .NETの資産を使える.便利.C#ができること |ゲーム開発Speaker : @AtriaSoft
モバイル開発C#ができることSpeaker : @AtriaSoft
完成品 ~LP_Navi~• 毎日の特売情報をサジェスト• 無効条件などの複雑な処理を自動で行う。• Xamarin. Androidを用いて開発• C#でバリバリ書ける• Azure Functionsを用いて特売情報などを取得• C#でガリガリ書けるC#ができること |モバイル開発
すごいだろ(3)Speaker : @AtriaSoftC#ができること |モバイル開発
モバイル開発• Apple store, Play storeにあるようなアプリが作れる• 普通AndroidとiOSは別々の言語でかかなきゃいけない– Xamarinというものを使えばC#で全部書ける– 使う言語が少なくて済む• Nintendo Switch OnlineNHK 紅白アプリなどがC#で作られています。C#ができること |モバイル開発Speaker : @AtriaSoft
モバイル開発• Apple store, Play storeにあるようなアプリが作れる• 普通AndroidとiOSは別々の言語でかかなきゃいけない– Xamarinというものを使えばC#で全部書ける– 使う言語が少なくて済む• Nintendo Switch OnlineNHK 紅白アプリなどがC#で作られています。“iOS”iPhoneのことですSpeaker : @AtriaSoftC#ができること |モバイル開発
Httpリクエスト Jsonオブジェクト特売情報を格納しているストレージエンジニアタイム Speaker : @AtriaSoftC#ができること |モバイル開発
エンジニアタイムXamarinによるスマホネイティブ開発• Xamarin.Formsを用いると強力なクロスプラットフォーム開発が可能– コード、UIの共通化が可能です• 最新バージョンにすぐ対応してくれます– Android Qも配信当日から使えました• 正直ぼくiOSは知識がありません– メモリ管理が難しいと聞いたことがあるSpeaker : @AtriaSoftC#ができること |モバイル開発
詳しくはWebで• All C#なモバイル開発. / All C # Mobile Development.– https://speakerdeck.com/atria/all-c-number-mobile-development• Xamarin.Android と Azure Functions で全てがC#製のスマホアプリを作った話– https://qiita.com/Atria/items/ffe8b510dcca07afcb8dSpeaker : @AtriaSoftC#ができること |モバイル開発
ソフトウェア開発・IoTC#ができることSpeaker : @AtriaSoft
こんなものが作れます(実際に作ったもの)C#ができること | ソフトウェア開発・IoTSpeaker : @AtriaSoft
PDFの編集履歴いじるやつちょっとグレーめなソフトウェアSpeaker : @AtriaSoftC#ができること | ソフトウェア開発・IoT
画面キャプチャを即座にツイートするやつわりと便利なソフトウェアSpeaker : @AtriaSoftC#ができること | ソフトウェア開発・IoT
C#製のDiscord BotDiscordのBotも開発できちゃうSpeaker : @AtriaSoftC#ができること | ソフトウェア開発・IoT
すごいだろ(4)Speaker : @AtriaSoftC#ができること | ソフトウェア開発・IoT
Windowsアプリ開発最強説• C#でのWindowsアプリ開発は最強(だと思う)• パーツの組み合わせで作れるよ• 割とかんたんに組めちゃう• .NET Coreで他OSもいける出典:How to Create a C# Windows Forms ApplicationSpeaker : @AtriaSoftC#ができること | ソフトウェア開発・IoT
C#ができること |番外編番外編C# + Visual Studioの最強タッグSpeaker : @AtriaSoft
番外編C# + Visual Studioの最強タッグ“Visual Studio”統合開発環境(IDE)のこと。VSCodeなども一緒にされる事があるSpeaker : @AtriaSoftC#ができること |番外編
番外編C# + Visual Studioの最強タッグ“Visual Studio”統合開発環境(IDE)のこと。VSCodeなども一緒にされる事がある“統合開発環境(IDE)”多機能な開発環境を指す。(おおざっぱ)Speaker : @AtriaSoftC#ができること |番外編
番外編C# + Visual Studioの最強タッグ“Visual Studio”統合開発環境(IDE)のこと。VSCodeなども一緒にされる事がある“統合開発環境(IDE)”多機能な開発環境を指す。(おおざっぱ)“VSCode”Visual Studio Codeのこと。かなりリッチなテキストエディタである。(メモ帳)Speaker : @AtriaSoftC#ができること |番外編
番外編C# + Visual Studioの最強タッグ“Visual Studio”統合開発環境(IDE)のこと。VSCodeなども一緒にされる事がある“統合開発環境(IDE)”多機能な開発環境を指す。(おおざっぱ)“VSCode”Visual Studio Codeのこと。かなりリッチなテキストエディタである。(メモ帳)エンジニアあるある調べると知らないことが増えるSpeaker : @AtriaSoftC#ができること |番外編
最初の設定をマウスで進められる• 真っ黒い画面を打つ必要なし。優しい。Speaker : @AtriaSoftC#ができること |番外編
インテリセンス• インテリセンスが強力で気持ちいい• 下の画像のように、次何をするかを提案してくれるSpeaker : @AtriaSoftC#ができること |番外編
インテリセンス• インテリセンスが強力で気持ちいい• 下の画像のように、次何をするかを提案してくれる“インテリセンス”補完機能のこと。予測変換のようなもの。Speaker : @AtriaSoftC#ができること |番外編
しかも無料• VSCodeは完全無料.• VisualStudioはCommunity版なら無料– Professional, Enterprise版は有料– 個人が上の2つを選択することはあんまりない(と思う)• 話し忘れたけどAzureもすごく安く使えるSpeaker : @AtriaSoftC#ができること |番外編
すごいだろ(5)Speaker : @AtriaSoftC#ができること |番外編
ちなみに機械学習もできます回帰モデルを回して価格予測を行った図正直なんもわからんかったSpeaker : @AtriaSoftC#ができること |番外編
ちなみに機械学習もできます回帰モデルを回して価格予測を行った図正直なんもわからんかったぼくもわかりませんSpeaker : @AtriaSoftC#ができること |番外編
C#の可能性Speaker : @AtriaSoft
C#の扉を叩いてみて• なんでもできちゃうC#、ワクワクしませんか?• 趣味で始めるのもよいかもしれません• C#で世界を作っちゃうのが本当になるかも– C#で世界を変えてみたい(夢)プログラミングの可能性、C#の可能性を感じていただければ幸いです。C#の可能性Speaker : @AtriaSoft