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
非root化Androidスマホでも動く仮想マシンアプリを試してみた
arkw
0
630
技術島の指定ツール「LaTeX」で同人誌を作ろう
arkw
2
240
ポスト・パソコン時代のジャンク遊び スマートデバイス編
arkw
0
150
ジャンカーよ、車も買え ~10分でわかる!? 中古車選び入門~
arkw
1
150
arkw vs. サーバ移転 -2024年1月版-
arkw
0
310
なれる! 村上さん Misskeyサーバ構築入門
arkw
0
580
Cloudflare Tunnelで自宅サーバを公開してみた
arkw
0
1.6k
5分でわかる!? 7セグメントLED制御
arkw
0
77
ヤフオクで原付買った話
arkw
0
230
Other Decks in Programming
See All in Programming
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.1k
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
150
ABEMAモバイルアプリが Kotlin Multiplatformと歩んだ5年 ─ 導入と運用、成功と課題 / iOSDC 2025
akkyie
0
320
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
580
『毎日の移動』を支えるGoバックエンド内製開発
yutautsugi
2
180
CSC305 Lecture 02
javiergs
PRO
1
260
(Extension DC 2025) Actor境界を越える技術
teamhimeh
1
220
開発者への寄付をアプリ内課金として実装する時の気の使いどころ
ski
0
350
CSC509 Lecture 04
javiergs
PRO
0
290
CSC305 Lecture 03
javiergs
PRO
0
230
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
180
CSC509 Lecture 02
javiergs
PRO
0
400
Featured
See All Featured
How GitHub (no longer) Works
holman
315
140k
Raft: Consensus for Rubyists
vanstee
139
7.1k
Statistics for Hackers
jakevdp
799
220k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
850
The Cult of Friendly URLs
andyhume
79
6.6k
Designing for humans not robots
tammielis
254
25k
Context Engineering - Making Every Token Count
addyosmani
5
180
The Straight Up "How To Draw Better" Workshop
denniskardys
237
140k
The Language of Interfaces
destraynor
162
25k
Building Applications with DynamoDB
mza
96
6.6k
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
ご清聴ありがとうございました