請問laravel優雅在何處?

來源:互聯網
上載者:User
關鍵字 laravel composer
都說laravel優雅,通過這幾天的使用我發現了無線蛋疼,充滿了反人類,不人性,難道程式員就就不能有使用者體驗嗎,每加一個控制器就加一次路由。就先談談路由吧,其他的先不談,他的優雅在哪裡請大牛指點。
請舉例說一下laravel的強大,不要總是說,laravel多牛,composer多好,具體好在哪裡。比如從一個項目的角度出發,在具體實現某個功能,都用到了哪些功能,這些寫法的好處,以及後期維護方面。

回複內容:

看文檔就知道了,符合人類思維的寫碼方式。我用它寫的項目,後來公司的IOS自己在改代碼。他不會PHP,當然改動不大。

這裡面其實還會出現一個問題:對php不熟悉的看它文檔的時候看不懂,然後就說它不好,所以對於新手來講,它的文檔不夠傻瓜化,不像國內架構一樣傻瓜的教你一步步怎麼寫。哈哈哈哈哈。。。
我就說說,你所謂的反人類的route機制。。
我不知道除了手動的方式來mapping路徑和行為的方式以外,還有什麼辦法可以更加的優雅。

按你的意思是,最理想的狀態是,加一個controller定義一個action就自動mapping到route裡面去。是啊,這個對於寫單純CRUD是省力啊,但是,要知道這種偷懶不叫 優雅。你會說,架構就是用來節省工作量的呀,偷懶有什麼錯呢?那你有錯了,架構是用來讓項目更加優雅的,而不是偷懶的。

那我再說說route都是自己手動設定的優雅所在吧。

1、你完全可以自己寫一套自動的controller和route,mapping的小模組,是的,你可以自己去寫,因為route檔案就是一個php的指令檔,你裡面可以調用任何你想要的東西。然後,你希望偷懶的事情,很輕鬆的自己解決了。

2、callback,合理的利用好callback特性,能發揮出無限的可能。
3、routes.php檔案在合適的管理下,就是一個牛逼的研究代碼的入口。你能很容易找到對應URL的controller或者是callback。乾乾淨淨一目瞭然,這個就叫優雅。


說完route再說說整體,底層用的都是symfony2的那些東西,什麼東西要用的composer配置一下,不要用的又沒必要去用它。那麼優雅的地方就來了,ORM模組我覺得用的彆扭,那我酒不用了唄。。。Http用的彆扭,那也就不用了唄。。。都自己寫唄。。這個就是優雅,低耦合。優秀的架構就是要這種,隨心所欲的感覺。

然後吐槽一下,某些不優雅的架構。。。。

$_C 還有 C()

其他的我就不多說了。。借鑒和使用了比較先進的工具和思想市面上這麼多架構,都很有特點。就剩“優雅”沒人用了。謝邀,Laravel 理念中 強調的更多的是 Artisan,就是工匠,工匠的craftmanship那肯定是優雅,精美的。所以所謂優雅,指的是代碼的整潔,易讀性和易於管理性;

首先來講易讀性,如果你熟悉英語的話,你會漸漸的知道Taylor是一個語文水平很高的人,Laravel這次詞本身聽上去就是一個很性感的名字。
所謂易讀性,就是你光憑代碼就可以知道意思,而不用讀注釋,代碼精簡複用度非常高;

代碼混亂很容易發生在controller部分,看一個例子,很簡單只是從首頁拿些資料:

public function index(){        $categories = ['新手','執行個體','外掛程式','進階'];        $posts = Post::with('category')->whereHas('category', function($q) use ($categories) { $q->whereIn('name', $categories); })->orderBy('created_at', 'desc')->simplePaginate(7);        $tags = Tag::all();           $most_read = Post::orderBy('clicks', 'desc')            ->with('category')            ->take(5)            ->get();           $feature_ids = Settings::get('features');        foreach ($feature_ids as $key=>$val){            $feature_posts[$key]=Post::findOrFail($val);        }        return view('front.index', compact('posts','tags','most_read','feature_posts'));    }
別的不說,先說route. 不知道你用的哪個版本,Laravel 4.*? 有沒有試過group, before和after filter. Laravel 5? 試試Middleware? 有沒有用到RESTful? 更不要說使用Route起來SEO有多麼方便。

Composer有多好用就更不用說了,易管理,易擴充,我都不知道Composer居然能被這樣吐槽。唉,我用了很多架構,到最後,我才深深地醒悟,直接用PHP的echo語句才是最優雅的。簡單就是美!好多架構都是過度設計。這是個讓人憂傷的架構 我深深感覺到這架構對新手的惡意對比Phalcon來看Laravel,沒發現任何優雅,繁雜臃腫,效能低下,不適合高訪問量的企業級應用。為什麼我覺得題主說的地方,我都覺得很人性,很容易理解呢。

維護起來也不得不說很好改。。。

難道不是一個星球的laravel。
  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.