Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
学情絶叫ウェブシステムGX
Search
Sora Arakawa
December 26, 2021
Programming
0
170
学情絶叫ウェブシステムGX
静大情報LT大会 -2021年12月-
Sora Arakawa
December 26, 2021
Tweet
Share
More Decks by Sora Arakawa
See All by Sora Arakawa
令和最新版Android Studioで化石デバイス向けアプリを作る
arkw
0
500
お前も同人作家にならないか? 技術系同人誌制作入門
arkw
2
40
非root化Androidスマホでも動く仮想マシンアプリを試してみた
arkw
0
950
技術島の指定ツール「LaTeX」で同人誌を作ろう
arkw
2
330
ポスト・パソコン時代のジャンク遊び スマートデバイス編
arkw
0
180
ジャンカーよ、車も買え ~10分でわかる!? 中古車選び入門~
arkw
1
190
arkw vs. サーバ移転 -2024年1月版-
arkw
0
330
なれる! 村上さん Misskeyサーバ構築入門
arkw
0
630
Cloudflare Tunnelで自宅サーバを公開してみた
arkw
0
1.8k
Other Decks in Programming
See All in Programming
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
210
フロントエンド開発の勘所 -複数事業を経験して見えた判断軸の違い-
heimusu
7
2.6k
Implementation Patterns
denyspoltorak
0
230
TestingOsaka6_Ozono
o3
0
280
ゆくKotlin くるRust
exoego
1
210
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
7
2.3k
re:Invent 2025 のイケてるサービスを紹介する
maroon1st
0
170
.NET Conf 2025 の興味のあるセッ ションを復習した / dotnet conf 2025 quick recap for backend engineer
tomohisa
0
120
コマンドとリード間の連携に対する脅威分析フレームワーク
pandayumi
1
400
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
340
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
290
從冷知識到漏洞,你不懂的 Web,駭客懂 - Huli @ WebConf Taiwan 2025
aszx87410
2
3.4k
Featured
See All Featured
Google's AI Overviews - The New Search
badams
0
890
Amusing Abliteration
ianozsvald
0
87
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
170
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.5k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.5k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
43
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
New Earth Scene 8
popppiees
1
1.4k
Transcript
学情絶叫 ウェブシステムGX ~Development the system and manage contents in the
server.~ Sora Arakawa (arkw) 2021/12/26 静大情報LT大会@静岡大学 浜松キャンパス 「#静大情報LT」でツイートすると 画面上部に表示されます!
自己紹介 Sora Arakawa(arkw) • 静岡大学 情報学部 行動情報学科 B2 • 所属:某室(長)、xRサークルはまりあ、ICON
• 愛知県岡崎市出身→静岡県浜松市在住 • 光回線開通しました • https://arkw.net/ • シンフォギア未履修(ここ重要)(OP曲がすき)
あらすじ
時に、西暦2021年
学情システム、 墜ちて燃えて尽きて、 そして―
学情チャンが生まれた
今日は何の話?
https://gakujochan.com/
None
の、システムの話
ところで ・GXって何?
ところで ・GXって何? → 知るか
ところで ・GXって何? → 知るか ・行情2年の地獄「Webシステム設計演習」とは無関係です
学情チャン ・学情の擬人化 ・学情チャンプロジェクト(通称:学プロ)が運営
学情チャン 非公式ポータル ・学情チャンの紹介や各種リンクをまとめたページ ・https://gakujo.arkw.net/ ・ロゴはこの頃からあった ・2021年5月24日公開~6月4日閉鎖 → 改修の後、学情チャンプロジェクトに譲渡
None
None
構成 ・ロリポップ! レンタルサーバ gakujochan.com/114514 とか入れるとエラーページが出る ・クライアントサイド:HTML、CSS、JavaScript(jQuery) ・サーバサイド:PHP(独自CMS v1)
独自CMS ・CMS?サイトジェネレータ? ・他のサイト用に書いたプログラムを転用 ・別ファイルのHTMLをテンプレートに合成する ・URLは「https://gakujochan.com/?p={HTMLファイル名}」 ・NoSQL(DBMS不使用)
独自CMS index.php ←メインプログラム list.php ←ページリスト page/ ←ページHTML格納フォルダ css/ img/ js/
…(以下略)
・pageディレクトリにHTMLファイルを格納する
<?php $list = [ "reference" => "資料集", "rules" => "学情チャンとのお約束",
"contest" => "コンテスト", "404" => "404 Not Found", "illustcon_1" => "第1回 学情チャンイラストコンテスト", "illustcon_2" => "第2回 学情チャンイラストコンテスト", "writecon_1" => "第1回 書いたよ学情チャンコンテスト" ];
<?php include_once "list.php"; $id = $_GET["p"]; if (isset($id) == "")
{ $id = "top"; } else { if (!file_exists("page/".$id.".html")) { $id = "top"; } $title = $list[$id]; } $main = file_get_contents("page/".$id.".html"); ?>
// タイトル <title><?php if (isset($title) == "") { echo "学情チャン
公式ウェブサイト"; } else { echo "".$title." - 学情チャン 公式ウェブサイト"; } ?></title>
// 本文 <div class="wrapper-columns-right"> <?php echo $main ?> </div>
構成 ・独自CMS v2を開発済み、そのうち実装予定 ・list.phpを廃止 ページHTMLの1行目にタイトルを記述する
カスのHTML問題 <a href = “***”> <a href=“***”style=“font-size: 20px;”> <b style=“font-size:
23px;”> <p><h2>Heading 2</h2></p>
カスの表記問題 ・表記揺れ 「第1回」「第2回」「第三回」 ・半角文字/全角文字の混同 「!」「!」「?」「?」 ・半角スペース/全角スペースの不統一
対策 Linterの導入 Prettierとかよくね? → Prettierは記法を統一するLinter 初歩的な(?)ミスを訂正するものではない <p><h2></h2></p>みたいなダメ文法はエラー吐いて死ぬ @ゆるぼ HTMLの文法ミスに対応したLinter
対策 Vue.js / Nuxt.jsに移行 <Contest v-bind:number=“3” v-bind:name=“書いたよ学情チャンコンテスト“ v-bind:status=“end” /> みたいに書けると楽?
ビルドはGitHub Actionsで…
対策 その他 ・独自CMSに文法チェック/記法チェックを付ける ・ちゃんとしたCMSを入れる(WordPressなど) ・記述ルールを策定する ←これが一番楽
ToDo
None
ご清聴ありがとうございました