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
160
学情絶叫ウェブシステム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
190
技術島の指定ツール「LaTeX」で同人誌を作ろう
arkw
2
170
ポスト・パソコン時代のジャンク遊び スマートデバイス編
arkw
0
130
ジャンカーよ、車も買え ~10分でわかる!? 中古車選び入門~
arkw
1
110
arkw vs. サーバ移転 -2024年1月版-
arkw
0
290
なれる! 村上さん Misskeyサーバ構築入門
arkw
0
530
Cloudflare Tunnelで自宅サーバを公開してみた
arkw
0
1.5k
5分でわかる!? 7セグメントLED制御
arkw
0
72
ヤフオクで原付買った話
arkw
0
220
Other Decks in Programming
See All in Programming
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
100
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
11
2k
[初登壇@jAZUG]アプリ開発者が気になるGoogleCloud/Azure+wasm/wasi
asaringo
0
130
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
240
Benchmark
sysong
0
260
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
130
VS Code Update for GitHub Copilot
74th
1
320
つよそうにふるまい、つよい成果を出すのなら、つよいのかもしれない
irof
1
300
童醫院敏捷轉型的實踐經驗
cclai999
0
190
Beyond Portability: Live Migration for Evolving WebAssembly Workloads
chikuwait
0
390
プロダクト志向ってなんなんだろうね
righttouch
PRO
0
160
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
350
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.8k
GraphQLとの向き合い方2022年版
quramy
47
14k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
Code Reviewing Like a Champion
maltzj
524
40k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Optimizing for Happiness
mojombo
379
70k
The Language of Interfaces
destraynor
158
25k
Embracing the Ebb and Flow
colly
86
4.7k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.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
ご清聴ありがとうございました